Part Number Hot Search : 
N1113 S1GLW 6HA2D IN74ACT D1020 R6100225 2N5401 74LV14A
Product Description
Full Text Search
 

To Download AD9957 Datasheet File

  If you can't view the Datasheet, Please click here to try to view without PDF Reader .  
 
 


  Datasheet File OCR Text:
  1 gsps quadrature digital upconverter with 18-bit iq data path and 14-bit dac AD9957 rev. 0 information furnished by analog devices is believed to be accurate and reliable. however, no responsibility is assumed by analog devices for its use, nor for any infringements of patents or other rights of third parties that may result from its use. specifications subject to change without notice. no license is granted by implication or otherwise under any patent or patent rights of analog devices. trademarks and registered trademarks are the property of their respective owners. one technology way, p.o. box 9106, norwood, ma 02062-9106, u.s.a. tel: 781.329.4700 www.analog.com fax: 781.461.3113 ?2007 analog devices, inc. all rights reserved. features 1 gsps internal clock speed (up to 400 mhz analog output) integrated 1 gsps 14-bit dac 250 mhz i/q data throughput rate phase noise ?125 dbc/hz (400 mhz carrier @ 1 khz offset) excellent dynamic performance >80 db narrow-band sfdr 8 programmable profiles for shift keying sin(x)/(x) correction (inverse sinc filter) reference clock multiplier internal oscillator for a single crystal operation software and hardware controlled power-down integrated ram phase modulation capability multichip synchronization easy interface to blackfin sport interpolation factors from 4 to 252 interpolation dac mode gain control dac internal divider allows references up to 2 ghz 1.8 v and 3.3 v power supplies 100-lead tqfp_ep package applications hfc data, telephony, and video modems wireless base station transmission broadband communications transmissions internet telephony general description the AD9957 functions as a universal i/q modulator and agile upconverter for communications systems where cost, size, power consumption, and dynamic performance are critical. the AD9957 integrates a high speed, direct digital synthesizer (dds), a high performance, high speed, 14-bit digital-to-analog converter (dac), clock multiplier circuitry, digital filters, and other dsp functions onto a single chip. it provides for baseband upconversion for data transmission in a wired or wireless communications system. the AD9957 is the third offering in a family of quadrature digital upconverters (qducs) that includes the ad9857 and ad9856. it offers performance gains in operating speed, power consumption, and spectral performance. unlike its predecessors, it supports a 16-bit serial input mode for i/q baseband data. the device can alternatively be programmed to operate either as a single tone, sinusoidal source or as an interpolating dac. the reference clock input circuitry includes a crystal oscillator, a high speed, divide-by-two input, and a low noise pll for multiplication of the reference clock frequency. the user interface to the control functions includes a serial port easily configured to interface to the sport of the blackfin? dsp and profile pins to enable fast and easy shift keying of any signal parameter (phase, frequency, and amplitude). functional block diagram format and interpolate nco i q reference clock input i/q data data for xmit reference clock input circuitry timing and control 14-bit dac user interface 06384-001 AD9957 figure 1.
AD9957 rev. 0 | page 2 of 60 table of contents features .............................................................................................. 1 applications ....................................................................................... 1 general description ......................................................................... 1 functional block diagram .............................................................. 1 specifications ..................................................................................... 4 electrical specifications ............................................................... 4 absolute maximum ratings ............................................................ 7 esd caution .................................................................................. 7 pin configuration and function descriptions ............................. 8 typical performance characteristics ........................................... 11 modes of operation ....................................................................... 15 overview ...................................................................................... 15 quadrature modulation mode ................................................. 16 blackfin interface (bfi) ............................................................ 17 interpolating dac mode .......................................................... 18 single tone mode ....................................................................... 19 signal processing ............................................................................ 20 parallel data clock (pdclk) ................................................... 20 transmit enable pin (txenable) .............................................. 20 input data assembler ................................................................ 21 inverse cci filter ....................................................................... 22 fixed interpolator (4) .............................................................. 22 programmable interpolating filter .......................................... 23 quadrature modulator .............................................................. 23 dds core ..................................................................................... 24 inverse sinc filter ....................................................................... 24 output scale factor (osf) ........................................................ 25 14-bit dac .................................................................................. 25 auxiliary dac ........................................................................ 25 ram control .................................................................................. 26 ram overview ........................................................................... 26 ram segment registers ............................................................ 26 ram state machine ................................................................... 26 ram trigger (rt) pin ............................................................... 26 load/retrieve ram operation ................................................ 27 ram playback operation ......................................................... 27 overview of ram playback modes ......................................... 28 ram ramp-up mode ........................................................... 28 ram bidirectional ramp mode .......................................... 29 ram continuous bidirectional ramp mode .................... 31 ram continuous recirculate mode ................................... 32 clock input (ref_clk) ................................................................ 33 refclk overview ..................................................................... 33 crystal driven ref_clk ......................................................... 33 direct driven ref_clk ........................................................... 33 phase-locked loop (pll) multiplier ...................................... 34 pll charge pump ...................................................................... 35 external pll loop filter components ................................... 35 pll lock indication .................................................................. 35 additional features ........................................................................ 36 output shift keying (osk) ....................................................... 36 manual osk ............................................................................ 36 automatic osk ....................................................................... 36 profiles ......................................................................................... 37 i/o_update pin ...................................................................... 37 automatic i/o update ............................................................... 37 power-down control ................................................................ 38 general-purpose i/o (gpio) port .......................................... 38 synchronization of multiple devices ........................................... 39 serial programming ....................................................................... 42 control interfaceserial i/o ................................................... 42 general serial i/o operation ................................................... 42 instruction byte .......................................................................... 42 instruction byte information bit map ................................ 42
AD9957 rev. 0 | page 3 of 60 serial i/o port pin descriptions ...............................................42 sclkserial clock ................................................................42 cs chip select bar ...............................................................42 sdioserial data input/output .........................................42 sdoserial data out ...........................................................42 i/o_resetinput/output reset ........................................42 i/o_updateinput/output update ................................43 serial i/o timing diagrams ......................................................43 msb/lsb transfers .....................................................................43 register map and bit descriptions ...............................................44 register map ................................................................................44 register bit descriptions ............................................................49 control function register 1 (cfr1) ....................................50 control function register 2 (cfr2) ....................................51 control function register 3 (cfr3) ....................................52 auxiliary dac control register ...........................................52 i/o update rate register .......................................................53 ram segment register 0 .......................................................53 ram segment register 1 .......................................................53 amplitude scale factor register (asf) ...............................53 multichip sync register .........................................................54 profile registers ...........................................................................55 profile<0:7> registersingle t one ......................................55 profile<0:7> registerqduc .............................................55 ram register ..........................................................................55 gpio config register ............................................................55 gpio data register ................................................................56 outline dimensions ........................................................................57 ordering guide ...........................................................................57 revision history 5/07revision 0: initial version
AD9957 rev. 0 | page 4 of 60 specifications electrical specifications avdd (1.8v) and dvdd (1.8v) = 1.8 v 5%, avdd (3.3v) = 3.3 v 5%, dvdd_i/o = 3.3 v 5%, t = 25c, r set = 10 k, i out = 20 ma, external reference clock frequency = 1000 mhz with refclk multiplier disabled, unless otherwise noted. table 1. parameter test conditions/comments min typ max unit ref_clk input characteristics frequency range refclk multiplier disabled 25 1000 1 mhz enabled 3.2 60 mhz maximum refclk input divider frequency full temperature range 1500 1900 mhz minimum refclk input divider frequency full temperature range 25 35 mhz external crystal 25 mhz input capacitance 3 pf input impedance (differential) 2.8 k input impedance (single-ended) 1.4 k duty cycle refclk multiplier disabled 45 55 % refclk multiplier enabled 40 60 % ref_clk input level single-ended 50 1000 mv p-p differential 100 2000 mv p-p refclk multiplier vco gain characteristics vco gain (k v ) @ center frequency vco0 range setting 429 mhz/v vco1 range setting 500 mhz/v vco2 range setting 555 mhz/v vco3 range setting 750 mhz/v vco4 range setting 789 mhz/v vco5 range setting 2 850 mhz/v refclk_out characteristics maximum capacitive load 20 pf maximum frequency 25 mhz dac output characteristics full-scale output current 8.6 20 31.6 ma gain error ?10 +10 %fs output offset 2.3 a differential nonlinearity 0.8 lsb integral nonlinearity 1.5 lsb output capacitance 5 pf residual phase noise @ 1 khz offset, 20 mhz a out refclk multiplier disabled ?152 dbc/hz enabled @ 20 ?140 dbc/hz enabled @ 100 ?140 dbc/hz ac voltage compliance range ?0.5 +0.5 v spurious-free dynamic range (sfdr single tone) f out = 20.1 mhz ?70 dbc f out = 98.6 mhz ?69 dbc f out = 201.1 mhz ?61 dbc f out = 397.8 mhz ?54 dbc
AD9957 rev. 0 | page 5 of 60 parameter test conditions/comments min typ max unit noise spectral density (nsd) single tone f out = 20.1 mhz ?167 dbm/hz f out = 98.6 mhz ?162 dbm/hz f out = 201.1 mhz ?157 dbm/hz f out = 397.8 mhz ?151 dbm/hz two-tone intermodulation distortion (imd) i/q rate = 62.2 msps; 16 interpolation f out = 25 mhz ?82 dbc f out = 50 mhz ?78 dbc f out = 100 mhz ?73 dbc modulator characteristics input data error vector magnitude 2.5 msymbols/s, qpsk, 4 oversampled 0.53 % 270.8333 ksymbols/s, gmsk, 32 oversampled 0.77 % 2.5 msymbols/s 256-qam, 4 oversampled 0.35 % wcdma ? fdd (tm1), 3.84 mhz bandwidth, 5 mhz channel spacing adjacent channel leakage ratio (aclr) if = 143.88 mhz ?78 dbc carrier feedthrough ?78 dbc serial port timing characteristics maximum sclk frequency 70 mbps minimum sclk pulse width low 4 ns high 4 ns maximum sclk rise/fall time 2 ns minimum data setup time to sclk 5 ns minimum data hold time to sclk 0 ns maximum data valid time in read mode 11 ns io_update/ps0/ps1/ps2/rt timing characteristics minimum pulse width high 1 sync_clk cycle minimum setup time to sync_clk 2 ns minimum hold time to sync_clk 0 ns iq input timing characteristics maximum pdclk frequency 250 mhz minimum iq data setup time to pdclk 2 ns minimum iq data hold time to pdclk 1 ns minimum tx_enable setup time to pdclk 2 ns minimum tx_enable hold time to pdclk 1 ns minimum tx_enable pulse width miscellaneous timing characteristics wake-up time 3 1 fast recovery mode 8 sysclk cycles full sleep mode 150 s minimum reset pulse width high 5 sysclk cycles 4 data latency (pipeline delay) data latency single tone mode frequency, phase, amplitude-to-dac output matched latency enabled 91 sysclk cycles frequency, phase-to-dac output matched latency disabled 79 sysclk cycles
AD9957 rev. 0 | page 6 of 60 parameter test conditions/comments min typ max unit cmos logic inputs voltage logic 1 2.0 v logic 0 0.8 v current logic 1 90 120 a logic 0 38 50 a input capacitance 2 pf cmos logic outputs 1 ma load voltage logic 1 2.8 v logic 0 0.4 v power supply current dvdd_i/o (3.3v) pin current consumption qduc mode 16 ma dvdd (1.8v) pin current consumption qduc mode 610 ma avdd (3.3v) pin current consumption qduc mode 28 ma avdd (1.8v) pin current consumption qduc mode 105 ma power consumption single tone mode 800 mw continuous modulation 8 interpolation 1400 1800 mw inverse sinc filter power consumption 150 200 mw full sleep mode 12 28 mw 1 the system clock is limited to 750 mhz maximum in bfi mode. 2 the gain value for vco range se tting 5 is measured at 1000 mhz. 3 wake-up time refers to the recovery from analog power-down modes. the longest time required is for the reference clock multipl ier pll to relock to the reference. 4 sysclk cycle refers to the actual clock frequency used on-chip by the dds. if the reference clock multiplier is used to multip ly the external reference clock frequency, the sysclk frequency is the external frequency multiplied by the reference clock multiplication factor. if the reference clock multiplier and divider are not used, the sysclk frequency is the same as the external reference clock frequency.
AD9957 rev. 0 | page 7 of 60 absolute maximum ratings table 2. parameter rating avdd (1.8 v), dvdd (1.8 v) supplies 2 v avdd (3.3 v), dvdd_i/o (3.3 v) supplies 4 v digital input voltage ?0.7 v to +4 v digital output current 5 ma storage temperature range ?65c to +150c operating temperature range ?40c to +85c ja 22c/w jc 2.8c/w maximum junction temperature 150c lead temperature (10 sec soldering) 300c stresses above those listed under absolute maximum ratings may cause permanent damage to the device. this is a stress rating only; functional operation of the device at these or any other conditions above those indicated in the operational section of this specification is not implied. exposure to absolute maximum rating conditions for extended periods may affect device reliability. 06384-003 avoid overdriving digital inputs. forward biasing esd diodes may couple digital noise onto power pins. digital inputs input dvdd_i/o figure 2. equivalent input circuit 06384-055 must terminate outputs to agnd for current flow. do not exceed t he output voltage compliance rating. iout iout dac outputs avdd figure 3. equivalent output circuit esd caution
AD9957 rev. 0 | page 8 of 60 pin configuration and function descriptions 26 27 28 29 30 55 54 53 52 51 tqfp-100 (e_pad) top view (not to scale) AD9957 d16 d15 dvdd_i/o (3.3v) dgnd dvdd (1.8v) 5 4 3 2 7 6 9 8 1 11 10 16 15 14 13 18 17 20 19 22 21 12 24 23 25 32 33 34 35 36 38 39 40 41 42 43 44 45 46 47 48 49 50 31 37 d14 d13 d12 d11 d10 d9 d8 d7 d6 pdclk/tsclk txenable/fs dgnd d5/sport i-data d4/sport q-data d3 dvdd_i/o (3.3v) dvdd (1.8v) d2 d1 d0 80 iout 79 agnd 78 agnd 77 avdd (3.3v) 76 avdd (3.3v) 75 avdd (3.3v) 74 avdd (3.3v) 73 agnd 72 nc 71 i/o_reset 70 cs 69 sclk 68 sdo 67 sdio 66 dvdd_i/o (3.3v) 65 dgnd 64 dvdd (1.8v) 63 dgnd 62 dgnd 61 nc 60 osk 59 i/o_update 58 dgnd 57 dvdd (1.8v) 56 dvdd_i/o (3.3v) sync_clk profile0 profile1 profile2 rt 100 99 98 97 96 95 94 93 92 91 90 89 88 87 86 85 84 83 82 81 nc nc nc nc agnd xtal_sel refclk_out nc avdd (1.8v) ref_clk ref_clk avdd (1.8v) agnd nc nc agnd dac_rset avdd (3.3v) agnd iout nc pll_loop_filter avdd (1.8v) agnd agnd avdd (1.8v) sync_in+ sync_in? sync_out+ sync_out? dvdd_i/o (3.3v) sync_smp_err dgnd master_reset dvdd_i/o (3.3v) dgnd dvdd (1.8v) ext_pwr_dwn pll_lock cci_ovfl dvdd_i/o (3.3v) dgnd dvdd (1.8v) nc d17 06384-004 pin 1 indicator nc = no connect figure 4. pin configuration
AD9957 rev. 0 | page 9 of 60 table 3. pin function descriptions pin no. mnemonic i/o 1 description 1, 24, 61, 72, 86, 87, 93, 97 to 100 nc not connected. allow device pin to float. 2 pll_loop_filter i pll-loop filter compensation. see external pll loop filter components section. 3, 6, 89, 92 avdd (1.8v) i analog core vdd. 1.8 v analog supplies. 74 to 77, 83 avdd (3.3v) i analog dac vdd. 3.3 v analog supplies. 17, 23, 30, 47, 57, 64 dvdd (1.8v) i digital core vdd. 1.8 v digital supplies. 11, 15, 21, 28, 45, 56, 66 dvdd_i/o (3.3v) i digital input/output vdd. 3.3 v digital supplies. 4, 5, 73, 78, 79, 82, 85, 88, 96 agnd i analog ground. 13, 16, 22, 29, 46, 58, 62, 63, 65 dgnd i digital ground. 7 sync_in+ i synchronization signal, digital input (rising edge active). synchronization signal from external master to synchronize internal subclocks. see the synchronization of multiple devices section. 8 sync_in? i synchronization signal, digital input (falling edge active). synchronization signal from external master to synchronize internal subclocks. see the synchronization of multiple devices section. 9 sync_out+ o synchronization signal, digital output (rising edge active). synchronization signal from internal device subclocks to synchronize external slave devices. see the synchronization of multiple devices section. 10 sync_out? o synchronization signal, digital output (falling edge active). synchronization signal from internal device subclocks to synchronize external slave devices. see the synchronization of multiple devices section. 12 sync_smp_err o synchronization sample error, digital output (active high). a high on this pin indicates that the AD9957 did not receive a valid sy nc signal on sync_in+/sync_in?. see the synchronization of multiple devices section. 14 master_reset i master reset, digital input (active high). th is pin clears all memory elements and sets registers to default values. 18 ext_pwr_dwn i external power-down, digital input (active high). a high level on this pin initiates the currently programmed power-down mode. see the power-down section of this document for further details. if unused, tie to ground. 19 pll_lock o pll lock, digital output (active high). a high on this pin indicates that the clock multiplier pll has acquired lock to the reference clock input. 20 cci_ovfl o cci overflow digital output, active high. a high on this pin indicates a cci filter overflow. this pin remains high until the cci overflow condition is cleared. 25 to 27, 31 to 39, 42 to 44, 48 to 50 d<17:0> i parallel data input bus (active high). these pins provide the interleaved, 18-bit, digital, i and q vectors for the modulator to upconvert. 42 sport i-data i in blackfin interface mode, this pin serves as the i-data serial input. 43 sport q-data i in blackfin interface mode, th is pin serves as the q-data serial input. 40 pdclk/tsclk o parallel data cloc k, digital output (clock). see the signal processing section for details. 41 txenable i transmit enable, digital input (active high). see the signal processing section for details. 41 fs i fs input. in blackfin interface mode, this pi n serves as the fs input to receive the rfs output signal from the blackfin. 51 rt i ram trigger, digital input (active high). this pin provides control for the ram amplitude scaling function. when this function is en gaged, a high sweeps the amplitude from the beginning ram address to the end. a low sweeps the amplitude from the end ram address to the beginning. if unused, connect to ground or supply. 52 to 54 profile<2:0> i profile select pins, digital inputs (active high). these pins select one of eight phase/frequency profiles for the dds core (singl e tone or carrier tone). changing the state of one of these pins transfers the current contents of all i/o buffers to the corresponding registers. state changes should be set up to the sync_clk pin. 55 sync_clk o output system clock/4, digital output (clock ). the i/o_update and profile<2:0> pins should be set up to the rising edge of this signal.
AD9957 rev. 0 | page 10 of 60 pin no. mnemonic i/o 1 description 59 i/o_update i input/output update; digital input or output (a ctive high) depending on the internal i/o update active bit. a high on this pin indicate s a transfer of the contents of the i/o buffers to the corresponding internal registers. 60 osk i output shift keying, digital input (active high ). when using osk (manual or automatic), this pin controls the osk function. see the output shift keying (osk) section of the data sheet for details. when not using osk, tie this pin high. 67 sdio i/o serial data input/output, di gital input/output (active high). this pin can be either unidirectional or bidirectional (default), depending on configuration settings. in bidirectional serial port mode, this pin acts as the serial data input and output. in unidirectional, it is an input only. 68 sdo o serial data output, digital output (active high). this pin is only active in unidirectional serial data mode. in this mode, it functions as the output. in bidirectional mode, this pin is not operational and should be left floating. 69 sclk o serial data clock. digital clock (rising edge on write, falling edge on read). this pin provides the serial data clock for the control data path. write operations to the AD9957 use the rising edge. readback operations from the AD9957 use the falling edge. 70 cs i chip select, digital input (active low). bringing this pin low enables the AD9957 to detect serial clock rising/falling edges. bringing th is pin high causes the AD9957 to ignore input on the serial data pins. 71 i/o_reset i input/output reset, digital input (active high). rather than resetting the entire device during a failed communication cycle, when brought high, this pin resets the state machine of the serial port controller and clears any i/o buffers that have been written since the last i/o update. when unused, tie this pin to ground to avoid accidental resets. 80 iout o open source dac complementary output source. analog output, current mode. connect through 50 to agnd. 81 iout o open source dac output source. analog o utput, current mode. connect through 50 to agnd. 84 dac_rset o analog reference pin. this pin programs the dac output full-scale reference current. attach a 10 k resistor to agnd. 90 ref_clk i reference clock input. analog input. see the refclk overview section for more details. 91 ref_clk i complementary reference clock in put. analog input. see the refclk overview section for more details. 94 refclk_out o reference clock output. analog output. see the refclk overview section for more details. 95 xtal_sel o crystal select. see the refclk overview section for more details. 1 i = input, o = output.
AD9957 rev. 0 | page 11 of 60 typical performance characteristics 0 ?20 ?10 ?50 ?40 ?30 ?80 ?70 ?60 ?90 ? 100 start 0hz 50mhz/div stop 500mhz 06384-048 1 1 figure 5. 15.625 khz quadrature tone, carrier = 102 mhz, cci = 16, f s = 1 ghz 0 ?20 ?10 ?50 ?40 ?30 ?80 ?70 ?60 ?90 ?100 start 0mhz 50mhz/div stop 500mhz 06384-050 1 1 figure 6. 15.625 khz quadrature tone, carrier = 222 mhz, cci = 16, f s = 1 ghz 0 ?20 ?10 ?50 ?40 ?30 ?80 ?70 ?60 ?90 ?100 start 0hz 50mhz/div stop 500mhz 06384-052 1 1 figure 7. 15.625 khz quadrature tone, carrier = 372 mhz, cci = 16, f s = 1 ghz 0 ?20 ?10 ?50 ?40 ?30 ?80 ?70 ?60 ?90 ? 100 center 102mhz 5khz/div span 50khz 06384-049 1 1 figure 8. narrow-band view of figure 5 (with carrier and lower sideband surpression) 0 ?20 ?10 ?50 ?40 ?30 ?80 ?70 ?60 ?90 ?100 center 222mhz 5khz/div span 50khz 06384-051 1 1 figure 9. narrow-band view of figure 6 (with carrier and lower sideband surpression) 0 ?20 ?10 ?50 ?40 ?30 ?80 ?70 ?60 ?90 ?100 center 372mhz 5khz/div span 50khz 06384-053 1 1 figure 10. narrow-band view of figure 7 (with carrier and lower sideband surpression)
AD9957 rev. 0 | page 12 of 60 0 ?20 ?10 ?50 ?40 ?30 ?80 ?70 ?60 ?90 ?100 start 0hz 50mhz/div stop 500mhz 06384-044 figure 11. qpsk, 7.8125 msymbols/s, 4x oversampled raised cosine, = 0.25, cci = 8, carrier = 102 mhz, f s = 1 ghz 0 ?20 ?10 ?50 ?40 ?30 ?80 ?70 ?60 ?90 ?100 start 0mhz 50mhz/div stop 500mhz 06384-045 figure 12. qpsk, 7.8125 msymbols/s, 4x oversampled raised cosine, = 0.25, cci = 8, carrier = 222 mhz, f s = 1 ghz 0 ?20 ?10 ?50 ?40 ?30 ?80 ?70 ?60 ?90 ? 100 start 0hz 50mhz/div stop 500mhz 06384-046 figure 13. qpsk, 7.8125 msymbols/s, 4x oversampled raised cosine, = 0.25, cci = 8, carrier = 372 mhz, f s = 1 ghz 0 ?20 ?10 ?50 ?40 ?30 ?80 ?70 ?60 ?90 ? 100 center 102mhz 2mhz/div span 20mhz 06384-041 figure 14. narrow-band view of figure 11 0 ?20 ?10 ?50 ?40 ?30 ?80 ?70 ?60 ?90 ?100 center 222mhz 2mhz/div span 20mhz 06384-042 figure 15. narrow-band view of figure 12 0 ?20 ?10 ?50 ?40 ?30 ?80 ?70 ?60 ?90 ?100 center 372mhz 2mhz/div span 20mhz 06384-043 figure 16. narrow-band view of figure 13
AD9957 rev. 0 | page 13 of 60 ? 50 ?55 ?60 ?65 ?75 ?70 06384-058 sfdr (dbc) frequency out (mhz) sfdr without pll sfdr with pll 0 50 100 150 200 250 300 350 400 figure 17. wideband sfdr vs. output frequency in single tone mode, pll with refclk = 15.625 mhz 64 400 450 300250 350 200 150 100 50 0 06384-059 sfdr (dbc) frequency out (mhz) ?75 ?70 ?65 ?60 ?55 ? 45 ?50 low supply high supply figure 18. sfdr vs. output frequency vs. supply (5%) in single tone mode 400 450 300 250 350 20015010050 0 06384-060 sfdr (dbc) frequency out (mhz) ?75 ?70 ?65 ?60 ?55 ? 50 ?40c +85c figure 19. sfdr vs. temperature in single tone mode ? 90 ?100 ?120 ?110 ?140 ?150 ?130 ?170 ?160 10 100 1k 10k 100k 100m 1m 10m 06384-061 magnitude (dbc/hz) frequency offset (hz) f out = 20.1mhz f out = 98.6mhz f out = 201.1mhz f out = 397.8mhz figure 20. residual phase noise, system clock = 1 ghz ? 90 ?100 ?110 ?120 ?130 ?140 ?150 ?160 10 100 1k 10k 100k 1m 10m 100m 06384-054 magnitude (dbc/ hz) frequency offset (hz) f out = 20.1mhz f out = 397.8mhz f out = 98.6mhz f out = 201.1mhz figure 21. residual phase noise using the refclk multiplier, refclk = 50 mhz with 20x multiplication, system clock = 1 ghz 1200 200 400 600 800 1000 0 100 200 300 400 500 600 700 800 900 1000 06384-062 power dissipation (mw) system clock frequency (mhz) dvdd 3.3v avdd 3.3v avdd 1.8v dvdd 1.8v figure 22. power dissipation vs. system clock (pll disabled)
AD9957 rev. 0 | page 14 of 60 1200 200 400 600 800 1000 0 100 200 300 400 500 600 700 800 900 1000 06384-063 power dissipation (mw) system clock frequency (mhz) dvdd 3.3v avdd 3.3v avdd 1.8v dvdd 1.8v 06384-064 ? 110 ? 100 ?90 ?80 ?70 ?60 ?50 ?40 ?30 ?20 center 143.86mhz span 25.5mhz 2.55mhz/div tx channel bandwidth: 3.84mhz adjacent channel bandwidth: 3.84mhz spacing: 3mhz adjacent channel bandwidth: 3.84mhz spacing: 10mhz power: ?11.88dbm lower: ?78.27db upper: ?78.50db lower: ?81.42db upper: ?81.87db w-cdma sgff fwd figure 23. power dissipation vs. system clock (pll enabled) figure 24. typical aclr for wideband cdma
AD9957 rev. 0 | page 15 of 60 ctral images and retaining the original ion a detailed block diagram of the inverse sinc filter is available in all three modes. modes of operation overview the AD9957 has three basic operating modes ? quadrature modulation (qduc) mode (default) ? interpolating dac mode ? single tone mode the active mode is selected via the operating mode bits in control function register 1 (cfr1). single tone mode allows the device to operate as a sinusoidal generator with the dds driving the dac directly. interpolating dac mode bypasses the dds, allowing the user to deliver baseband data to the device at a sample rate lower than that of the dac. an internal chain of rate interpolation filters the user data, upsample, to the dac sample rate. com- bined, the filters provide for programmable rate interpolation while suppressing spe baseband spectrum. qduc mode employs both the dds and the rate interpolat filters. in this case, two parallel banks of rate interpolation filters allow baseband processing of in-phase and quadrature (i/q) signals with the dds providing the carrier signal to be modulated by the baseband signals. the AD9957 is shown in figure 25 . 06384-005 pdclk i/q in ext_pwr_dwn dac_rset iout iout txenable ftw pw dac gain inverse sinc filter clock ftw pw 8 sysclk pll 2 clock mode ref_clk ref_clk refclk_out xtal_sel parallel data timing and control AD9957 cos ( t+ ) sin ( t+ ) sync_out sync_in pll_lock pll_loop_filter master_reset 2 2 2 cci_ovfl osk dds aux dac 8-bit power down control rt ram profile cs i/o_reset sclk sdio serial i/o port i/o_update programming registers 3 iq isqs 18 data assembler and formatter i q is qs blackfin interface 18 18 16 16 half-band filters (4) inverse cci cci (1 to 63) half-band filters (4) inverse cci cci (1 to 63) osk internal clock timing and control dac 14-bit output scale factor figure 25. detailed block diagram
AD9957 rev. 0 | page 16 of 60 quadrature modu lation mode a block diagram of the AD9957 operating in qduc mode is shown in figure 26 ; grayed items are inactive. the parallel input accepts 18-bit i- and q-words in time-interleaved fashion. that is, an 18-bit i-word is followed by an 18-bit q-word, then the next 18-bit i-word, and so on. one 18-bit i-word and one 18-bit q-word together comprise one internal sample. the data assembler and formatter de-interleave the i- and q-words so that each sample propagates along the internal data pathway in parallel fashion. both i and q data paths are active; the parallel data clock (pdclk) serves to synchronize the input of i/q data to the AD9957. the profile and i/o_update pins are also synchronous to the pdclk. the dds core provides a quadrature (sine and cosine) local oscillator signal to the quadrature modulator, where the interpolated i and q samples are multiplied by the respective phase of the carrier and summed together, producing a quadrature modulated data stream. this data stream is routed through the inverse sinc filter (optionally), and the output scaling multiplier. then it is applied to the 14-bit dac to produce the quadrature modulated analog output signal. 06384-006 pdclk i/q in ext_pwr_dwn dac_rset iout iout txenable dac gain output scale factor inverse sinc filter clock ftw pw 8 sysclk pll 2 clock mode ref_clk ref_clk refclk_out xtal_sel AD9957 cos ( t+ ) sin ( t+ ) sync_out sync_in pll_lock pll_loop_filter master_reset 2 2 osk dds aux dac 8-bit power down control 18 data assembler and formatter i q is qs blackfin interface 18 18 16 16 inverse cci inverse cci osk internal clock timing and control dac 14-bit cci_ovfl ftw pw parallel data timing and control 2 rt ram profile cs i/o_reset sclk sdio serial i/o port i/o_update programming registers 3 iq is qs half-band filters (4) cci (1 to 63) half-band filters (4) cci (1 to 63) figure 26. quadrature modulation mode
AD9957 rev. 0 | page 17 of 60 blackfin interface (bfi) a subset of the qduc mode is the blackfin interface (bfi) mode, shown in figure 27 ; grayed items are inactive. in this mode, a separate i and q serial bit stream is applied to the baseband data port instead of parallel data-words. the two serial inputs provide for 16-bit i- and q-words (unlike the 18- bit words in normal qduc mode). the serial bit streams are delivered to the blackfin interface. the blackfin interface converts the 16-bit serial data into 16-bit parallel data to propagate down the signal processing chain. the blackfin interface includes an additional pair of half-band filters in both i and q signal paths (not shown explicitly in the diagram). the two half-band filters increase the interpolation of the baseband data by a factor of four, relative to the normal qduc mode. the synchronization of the serial data occurs through the pdclk signal. in bfi mode, the pdclk signal is effectively the bit clock for the serial data. 06384-007 pdclk i/q in ext_pwr_dwn dac_rset iout iout txenable dac gain inverse sinc filter clock ftw pw 8 sysclk pll 2 clock mode ref_clk ref_clk refclk_out xtal_sel AD9957 cos ( t+ ) sin ( t+ ) sync_out sync_in pll_lock pll_loop_filter master_reset 2 2 osk dds aux dac 8-bit power down control 2 data assembler and formatter i q is qs blackfin interface 18 18 16 16 inverse cci inverse cci osk internal clock timing and control dac 14-bit cci_ovfl osk ftw pw parallel data timing and control 2 rt ram profile cs i/o_reset sclk sdio serial i/o port i/o_update programming registers 3 iq is qs half-band filters (4) cci (1 to 63) half-band filters (4) cci (1 to 63) output scale factor figure 27. quadrature modulation mode, blackfin interface
AD9957 rev. 0 | page 18 of 60 interpolating dac mode a block diagram of the AD9957 operating in the interpolating dac mode is shown in figure 28 ; grayed items are inactive. in this mode, the q data path, dds, and modulator are all disabled; only the i data path is active. as in quadrature modulation mode, the pdclk pin functions as a clock, synchronizing the input of data to the AD9957. no modulation takes place in the interpolating dac mode; therefore, the spectrum of the data supplied at the parallel port remains at baseband. however, a sample rate conversion takes place based on the programmed interpolation rate. the inter- polation hardware processes the signal, effectively performing an oversample with a zero-stuffing operation. the original input spectrum remains intact and the images that otherwise would occur from the sample rate conversion process are suppressed by the interpolation signal chain. 06384-008 pdclk i/q in ext_pwr_dwn dac_rset iout iout txenable dac gain inverse sinc filter clock ftw pw 8 sysclk pll 2 clock mode ref_clk ref_clk refclk_out xtal_sel parallel data timing and control AD9957 cos ( t+ ) sin ( t+ ) sync_out sync_in pll_lock pll_loop_filter master_reset 2 2 dds aux dac 8-bit power down control 18 data assembler and formatter i q is qs blackfin interface 18 18 16 16 half-band filters (4) inverse cci cci (1 to 63) half-band filters (4) inverse cci cci (1 to 63) osk internal clock timing and control dac 14-bit ftw pw osk rt ram profile cs sclk serial i/o port i/o_update programming registers 3 2 iq isqs output scale factor cci_ovfl i/o_reset sdio figure 28. interpolating dac mode
AD9957 rev. 0 | page 19 of 60 single tone mode a block diagram of the AD9957 operating in the single tone mode is shown in figure 29 ; grayed items are inactive. in this mode, both i and q data paths are disabled from the 18-bit parallel data port up to, and including, the modulator. the internal dds core produces a single frequency signal based on the programmed tuning word. the user may select either the cosine or sine output of the dds. the sinusoid at the dds output can be scaled using a 14-bit amplitude scale factor (asf) and optionally routed through the inverse sinc filter. single tone mode offers the output shift keying (osk) function. it provides the ability to ramp the amplitude scale factor between zero and an arbitrary preset value over a programmable time interval. 06384-009 pdclk i/q in ext_pwr_dwn dac_rset iout iout txenable ftw pw dac gain inverse sinc filter clock ftw pw 8 sysclk pll 2 clock mode ref_clk ref_clk refclk_out xtal_sel parallel data timing and control AD9957 cos ( t+ ) sin ( t+ ) sync_out sync_in pll_lock pll_loop_filter master_reset 2 2 cci_ovfl osk dds aux dac 8-bit power down control rt ram profile cs i/o_reset sclk sdio serial i/o port i/o_update programming registers 3 2 iq isqs 10 data assembler and formatter i q is qs blackfin interface 18 18 16 16 half-band filters (4) inverse cci cci (1 to 63) half-band filters (4) inverse cci cci (1 to 63) osk internal clock timing and control dac 14-bit output scale factor figure 29. single tone mode
AD9957 rev. 0 | page 20 of 60 signal processing for a better understanding of the operation of the AD9957, it is helpful to follow the signal path in quadrature modulation mode from the parallel data port to the output of the dac, examining the function of each block (see figure 26 ). the internal system clock (sysclk) signal that generates from the timing source provided to the ref_clk pins provides all timing within the AD9957. parallel data clock (pdclk) the AD9957 generates a signal on the pdclk pin, which is a clock signal that runs at the sample rate of the parallel data port. pdclk serves as a data clock for the parallel port in qduc and interpolating dac modes; in bfi mode, it is a bit clock. normally, the device uses the rising edges on pdclk to latch the user-supplied data into the data port. alternatively, the pdclk invert bit selects the falling edges as the active edges. furthermore, the pdclk enable bit is used to switch off the pdclk signal. even when the output signal is turned off via the pdclk enable bit, pdclk continues to operate internally. the device uses pdclk internally to capture parallel data. note that pdclk is logic 0 when disabled. in qduc mode, the AD9957 expects alternating i- and q- data-words at the parallel port (see figure 31 ). each active edge of pdclk captures one 18-bit word, therefore, there are two pdclk cycles per i/q pair. in bfi mode, the AD9957 expects two serial bit streams, each segmented into 16-bit words with pdclk indicating each new bit. in either case, the output clock rate is f pdclk as explained in the input data assembler section. in qduc applications that require a consistent timing relationship between the internal sysclk signal and the pdclk signal, the pdclk rate control bit is used to slightly alter the operation of pdclk. when this bit is set, the pdclk rate is reduced by a factor of two. this causes rising edges on pdclk to latch incoming i-words and falling edges to latch incoming q-words. again, the edge polarity assignment is reversible via the pdclk invert bit. transmit enable pin (txenable) the AD9957 accepts a user-generated signal applied to the txenable pin that gates the user supplied data. polarity of the txenable pin is set using the txenable invert bit (see the register map section for details). when txenable is true, the device latches data into the device on the expected edge of pdclk (based on the pdclk invert bit). when txenable is false, the device ignores the data supplied to the port, even though the pdclk may continue to operate. furthermore, when the txenable pin is held false, then the device either forces the 18-bit data-words to logic 0s, or it retains the last value present on the data port prior to txenable switching to the false state (see the data assembler hold last value bit in the register map section). alternatively, rather than operating the txenable pin as a gate for framing bursts of data, it can be driven with a clock signal operating at the parallel port data rate. when driven by a clock signal, the transition from the false to true state must meet the required setup and hold times on each cycle to ensure proper operation. in qduc mode, on the false-to-true edge of txenable, the device is ready to receive the first i-word. the first i-word is latched into the device coincident with the active edge of pdclk. the next active edge of pdclk latches in a q-word, and so on, until txenable is returned to a static false state. the user may reverse the ordering of the i- and q-words via the q-first data pairing bit. furthermore, the user must ensure that an even number of data words are delivered to the device as it must capture both an i- and a q-word before the data is processed along the signal chain. in interpolating dac mode, txenable operation is similar to qduc mode, but without the need for i/q data pairing; the even-number-of-pdclk-cycles rule does not apply. in bfi mode, operation of the txenable pin is similar except that instead of the false-to-true edge marking the first i-word, it marks the first i and q bit in a serial frame. the user must ensure that all 16-bits of a serial frame are delivered because the device must capture a full 16-bit i- and q-word before the data is proc- essed along the signal chain. the timing relationships between txenable, pdclk, and data are shown in figure 30 , figure 31 , and figure 32 . table 4. parallel and serial data bus timing symbol definition data bus minimum parallel/serial t ds data setup time 2 ns t dh data hold time 1 ns
AD9957 rev. 0 | page 21 of 60 t dh i 0 txenable pdclk d<13:0> i k i k ? 1 i 3 i 2 i 1 06384-010 t dh t ds t ds figure 30. 18-bit parallel port timing diagraminterpolating dac mode t dh i 0 txenable pdclk d<13:0> q n i n q 1 i 1 q 0 06384-011 t dh t ds t ds figure 31. 18-bit parallel port timing diagramquadrature modulation mode txenable pdclk i data q data q 0 q 1 q 2 q 3 q 4 q 6 q 5 q 7 q 8 q 9 q 10 q 11 q 12 q 13 q 14 q 15 i 0 i 1 i 2 i 3 i 4 i 6 i 5 i 7 i 8 i 9 i 10 i 11 i 12 i 13 i 14 i 15 i 16n ? 1 q 16n ? 1 06384-012 figure 32. dual serial i/q bit stream timing diagram, bfi mode input data assembler the input to the AD9957 is an 18-bit parallel data port in qduc or interpolating dac modes. in bfi mode, it operates as a dual serial data port. in qduc mode, it is assumed that two consecutive 18-bit words represent the real (i) and imaginary (q) parts of a complex number of the form, i + jq. the 18-bit words are supplied to the input of the AD9957 at a rate of r f f sysclk pdclk 2 = for qduc mode where: f sysclk (for all of the pdclk equations in this section) is the sample rate of the dac. r (for all of the pdclk equations in this section) is the interpolation factor of the programmable interpolation filter. when the pdclk rate control bit is active in qduc mode, however, the frequency of pdclk becomes r f f sysclk pdclk 4 = with pdclk rate control active in the interpolating dac mode, the rate of pdclk is the same as qduc mode with the pdclk rate control bit active, that is r f f sysclk pdclk 4 = for interpolating dac mode in bfi mode, the 18-bit parallel input converts to a dual serial input. that is, one pin is assigned as the serial input for the i-words and one pin is assigned as the serial input for the q-words. the other 16 pins are not used. furthermore, each i- and q-word has a 16-bit resolution. f pdclk is the bit rate of the i- and q-data streams and is given by r f f sysclk pdclk = (for bfi mode)
AD9957 rev. 0 | page 22 of 60 encoding and pulse shaping of symbols must be implemented before the data is presented to the input of the AD9957. data delivered to the input of the AD9957 may be formatted as either twos complement or offset binary (see the data format bit in table 13 ). in bfi mode, the bit sequence order can be set to either msb-first or lsb-first (via the blackfin bit order bit). inverse cci filter the inverse cascaded comb integrator (cci) filter predistorts the data, compensating for the slight attenuation gradient imposed by the cci filter (see the programmable interpolating filter section). data entering the first half-band filter occupies a maxi- mum bandwidth of ? f iq as defined by nyquist (where f iq is the sample rate at the input of the first half-band filter); see figure 33 . if the cci filter is used, the inband attenuation gradient can pose a problem for applications requiring an extremely flat pass band. for example, if the spectrum of the data supplied to the AD9957 occupies a significant portion of the ? f data region, the higher frequencies of the data spectrum are slightly more attenuated than the lower frequencies (the worst-case overall droop from f = 0 to ? f data is < 0.8 db). the inverse cci filter has a response characteristic that is the inverse of the cci filter response over the ? f iq region. inband attenuation gradient cic filter response ?f iq f iq 4 f iq f 06384-013 figure 33. cci filter response the product of the two responses yields an extremely flat pass band (0.05 db over the baseband nyquist bandwidth) eliminating the inband attenuation gradient introduced by the cci filter. the cost is a slight attenuation of the input signal (approximately 0.5 db for a cci interpolation rate of 2, and 0.8 db for higher interpolation rates). the inverse cci filter can be bypassed using the appropriate bit in the register map; it is automatically bypassed if the cci inter- polation rate is 1. when bypassed, power to the stage turns off to reduce power consumption. fixed interpolator (4) this block is a fixed 4 rate interpolator, implemented as a cascade of two half-band filters. together, the sampling rate of these two filters increase by a factor of four while preserving the spectrum of the baseband signal applied at the input. both are linear phase filters; virtually no phase distortion is intro- duced within their pass bands. their combined insertion loss is 0.01 db, preserving the relative amplitude of the input signal. the filters are designed to deliver a composite performance that yields a usable pass band of 40% of the input sample rate. within that pass band, ripple does not exceed 0.002 db peak-to-peak. the stop band extends from 60% to 340% of the input sample rate and offers a minimum of 85 db attenuation. figure 34 and figure 35 show the composite response of the two half-band filters. ?120 ?110 ?100 ?90 ?80 ?70 ?60 ?50 ?40 ?30 ?20 ?10 0 10 0 0.5 1.0 1.5 2.0 2.5 3.0 3.5 4.0 06384-014 (db) f i figure 34. half-band 1 and half -band 2 composite response (frequency scaled to input sample rate of half-band 1) ?0.010 ?0.008 0.008 ?0.006 0.006 ?0.004 0.004 ?0.002 0.002 0 0.010 0 0.1 0.2 0.3 0.4 0.5 06384-015 (db) f i figure 35. composite pass-band detail (frequency scaled to input sample rate of half-band 1) in bfi mode, there are two additional half-band filters resident yielding a total fixed interpolation factor of 16. the extra bfi filters use the same filter tap coefficient values as the qduc half-band filters, but their data pathway is 16 bits (instead of 18 bits as with the qduc half-band filters). as such, baseband quantization noise is higher in bfi mode. knowledge of the frequency response of the half-band filters is essential to understanding their impact on the spectral properties of the input signal. this is especially true when using the quad- rature modulator to upconvert a baseband signal containing complex data symbols that have been pulse shaped.
AD9957 rev. 0 | page 23 of 60 consider that a complex symbol is represented by a real (i) and an imaginary (q) component. thus, requiring two digital words to represent a single complex sample of the form i + jq. the sample rate associated with a sequence of complex symbols is referred to as f symbol . if pulse shaping is applied to the symbols, then the sample rate must be increased by some integer factor, m (a consequence of the pulse shaping process). this new sample rate (f iq ) is related to the symbol rate by f iq = mf symbol where f iq is the rate at which complex samples must be supplied to the input of the first half-band filter in both (i and q) signal paths. this rate should not be confused with the rate at which data is supplied to the AD9957. typically, pulse shaping is applied to the baseband symbols via a filter having a raised cosine response. in such cases, an excess bandwidth factor (, 0 1) is used to modify the bandwidth of the data. for = 0, the data bandwidth corresponds to f symbol /2; for = 1, the data bandwidth extends to f symbol . figure 36 shows the relationship between , the bandwidth of the raised cosine response, and the response of the first half-band filter. f f f typical spectrum of a random symbol sequence raised cosine spectral mask sample rate for 2 oversampled pulse shaping input sample rate of first half-band filter half-band filter response input sample rate of first half-band filter nyquist band width ?f symbol f symbol 2 f symbol 3 f symbol ?f symbol 0.4 f iq f iq 2 f iq ?f iq f symbol 2 f symbol 4 f symbol = 1 = 0 = 0.5 0 6384-016 figure 36. effect of the excess bandwidth factor () the responses in figure 36 reflect the specific case of m = 2 (the interpolation factor for the pulse shaping operation). increasing factor m shifts the location of the f iq point on the half-band response portion of the diagram to the right, as it must remain aligned with the corresponding mf symbol point on the frequency axis of the raised cosine spectral diagram. however, if f iq shifts to the right, so does the half-band response, proportionally. the result is that the raised co sine spectral mask always lies within the flat portion (dc to 0.4 f iq ) of the pass band response of the first half-band filter, regardless of the choice of , so long as m > 2. therefore, for m > 2, the first half-band filter has absolutely no negative impact on the spectrum of the baseband signal when raised cosine pulse shaping is employed. for the case of m = 2, a problem can arise. this is highlighted by the shaded area in the tail of the = 1 trace on the raised cosine spectral mask diagram. notice that this portion of the raised cosine spectral mask extends beyond the flat portion of the half-band response and causes unwanted amplitude and phase distortion as the signal passes through the first half-band filter. to avoid this, simply ensure that 0.6 when m = 2. programmable interpolating filter the programmable interpolator is implemented as a low-pass cci filter. it is programmable by a 6-bit control word, giving a range of 2 to 63 interpolation. the programmable interpolator is bypassed when programmed for an interpolation factor of 1. when bypassed, power to the stage is removed and the inverse cci filter is also bypassed, because its compensation is not needed. the output of the programmable interpolator is the data from the 4 interpolator further upsampled by the cci filter, according to the rate chosen by the user. this results in the upsampling of the input data by a factor of 8 to 252 in steps of four. the transfer function of the cci interpolating filter is () () 5 1 0 2 ? ? ? ? ? ? ? ? = ? = ? r k fkj e fh (1) where r is the programmed interpolation factor, and f is the frequency normalized to f sysclk . quadrature modulator the digital quadrature modulator stage shifts the frequency of the baseband spectrum of the incoming data stream up to the desired carrier frequency (a process known as upconversion). at this point, the baseband data, which was delivered to the device at an i/q sample rate of f iq , has been upsampled to a rate equal to the frequency of sysclk, making the data sampling rate equal to the sampling rate of the carrier signal. the frequency of the carrier signal is controlled by a direct digital synthesizer (dds). the dds very precisely generates the desired carrier frequency from the internal reference clock (sysclk). the carrier is applied to the i and q multipliers in quadrature fashion (90 phase offset) and summed, yielding a data stream that represents the quadrature modulated carrier.
AD9957 rev. 0 | page 24 of 60 the modulation is performed digitally avoiding the phase offset, gain imbalance, and crosstalk issues commonly associated with analog modulators. note that the modulated, so-called signal is a number stream sampled at the rate of sysclk, the same rate at which the dac is clocked. the orientation of the modulated signal with respect to the carrier is controlled by a spectral invert bit. this bit resides in each of the four profile registers. by default, the time domain output of the quadrature modulator takes the form i ( t ) cos( t ) ? q ( t ) sin(t) (2) when the spectral invert bit is asserted, it becomes i ( t ) cos( t ) + q ( t ) sin(t) (3) dds core the direct digital synthesizer (dds) block generates sine and/or cosine signals. in single tone mode, the dds generates either a digital sine or cosine waveform based on the select dds sine output bit. in qduc mode, the dds generates the quadra- ture carrier reference signal that digitally modulates the i/q baseband signal. the dds output frequency is tuned using registers accessed via the serial i/o port. this allows for both precise tuning and instantaneous changing of the carrier frequency. the equation relating output frequency (f out ) of the dds to the frequency tuning word (ftw) and the system clock (f sysclk ) is sysclk out f ftw f ? ? ? ? ? ? = 32 2 (4) where ftw is a decimal number from 0 to 2,147,483,647 (2 31 ? 1). solving for ftw yields ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? = sysclk out f f round ftw 32 2 (5) where the round() function means to round the result to the nearest integer. for example, for f out = 41 mhz and f sysclk = 122.88 mhz, then ftw = 1,433,053,867 (0x556aaaab). in single tone mode, the dds frequency, phase, and amplitude are all programmable via the serial i/o port. the amplitude is controlled by means of a digital multiplier using a 14-bit fractional scale value called the amplitude scale factor (asf). the lsb weight is 2 ?14 , yielding a multiplier range of 0 to 0.99993896484375 (1 ? 2 ?14 ). the phase offset is controlled by means of a digital adder that uses a 14-bit offset value called the phase offset word (pow). the adder is situated between the phase accumulator and the angle-to-amplitude conversion logic in the dds core. the adder applies the pow to the instantaneous phase values produced by the dds phase accumulator. the adder is msb-aligned with the phase accumulator yielding an lsb weight of 2 ?14 (which equates to a resolution of ~0.022 or ~0.000383 radians). both the asf and the pow are available for each of the eight profiles. inverse sinc filter the sampled carrier data stream is the input to the on board digital-to-analog converter. the dac output spectrum is shaped by the characteristic sin(x)/x (or sinc) envelope, due to the intrinsic zero-order hold effect associated with dac- generated signals. the shape of the sinc envelope is well known and can be compensated for. this compensation is provided by the inverse sinc filter preceding the dac. the inverse sinc filter is implemented as a digital fir filter. its response characteristic very nearly matches the inverse of the sinc envelope, as shown in figure 37 (along with the sinc envelope for comparison). the inverse sinc filter is enabled through a bit in the register map. the filter tap coefficients are listed in table 5 . the filter predistorts the data prior to its arrival at the dac to compensate for the sinc envelope that otherwise distorts the spectrum. when the inverse sinc filter is enabled, it introduces an ~3.0 db insertion loss. the inverse sinc compensation is effective for output frequencies up to 40% (nominally) of the dac sample rate. table 5. inverse sinc fi lter tap coefficients tap no. tap value tap no. 1 ?35 7 2 +134 6 3 ?562 5 4 +6729 4 in figure 37 , it can be seen that the sinc envelope introduces a frequency dependent attenuation that can be as much as 4 db at the nyquist frequency (half of the dac sample rate). without the inverse sinc filter, the dac output also suffers from the frequency dependent droop of the sinc envelope. the inverse sinc filter effectively flattens the droop to within 0.05 db as shown in figure 38 , which shows the corrected sinc response with the inverse sinc filter enabled. 1 0 ?1 ?2 ?3 ?4 0 0.1 0.2 0.4 0.3 0.5 06384-017 (db) frequency relative to dac sample rate inverse sinc sinc figure 37. sinc and inverse sinc responses
AD9957 rev. 0 | page 25 of 60 ? 2.8 ?2.9 ?3.0 ?3.1 0 0.1 0.2 0.4 0.3 0.5 06384-018 (db) frequency relative to dac sample rate compensated response figure 38. dac response with inverse sinc compensation output scale factor (osf) in qduc and interpolating dac modes, output amplitude is controlled using an 8-bit digital multiplier. the 8-bit multiplier value is called the output scale factor (osf) and is programmed via the appropriate control registers. it is available for each of the eight profiles. the lsb weight is 2 ?7 , which yields a multiplier range of 0 to 1.9921875 (2 ? 2 ?7 ). the gain extends to nearly a factor of 2 to provide a means to overcome the intrinsic loss through the modulator when operating in the quadrature modulation mode. in interpolating dac mode, the osf should not be programmed to exceed unity, as clipping can result. programming the 8-bit multiplier to unity gain (0x80) bypasses the stage and reduces power consumption. 14-bit dac the AD9957 incorporates an integrated 14-bit current-output dac. the output current is delivered as a balanced signal using two outputs. the use of balanced outputs reduces the amount of common-mode noise at the dac output, increasing signal-to- noise ratio. an external resistor (r set ) connected between the dac_rset pin and agnd establishes a reference current. the full-scale output current of the dac (i out ) is a scaled version of the reference current (see the auxiliary dac section that follows). proper attention should be paid to the load termination to keep the output voltage within the specified compliance range, as voltages developed beyond this range cause excessive distortion and can damage the dac output circuitry. auxiliary dac the full-scale output current of the main dac (i out ) is controlled by an 8-bit auxiliary dac. an 8-bit code word stored in the appropriate register map location sets i out according to the following equation: ? ? ? ? ? ? += 96 1 4.86 code r i set out (6) where: r set is the value of the r set resistor (in ohms). code is the 8-bit value supplied to the auxiliary dac (default is 127). for example, with r set = 10,000 and code = 127, i out = 20.07 ma.
AD9957 rev. 0 | page 26 of 60 ram control ram overview the AD9957 has an integrated 1024 32-bit ram. this ram is only accessible when the AD9957 is operating in qduc or interpolating dac mode. the ram has two fundamental modes of operation: data entry/retrieve mode and playback mode. the mode is selected by programming the ram enable bit in cfr1 via the serial i/o port. data entry/retrieve mode is used to load or read back the ram contents via the serial i/o port. playback mode is used to deliver ram data to one of two internal destinations: the baseband scaling multipliers (see figure 25 , the is and qs labels) or the baseband signal chain (see figure 25 , the i and q labels). in both cases, the ram can be used to apply an arbitrary, time-varying waveform to the selected destination. a block diagram of the ram and its control elements is shown in figure 39 . the external parallel data port is disabled when the baseband signal path serves as the ram playback destination. ram 32 10 q state machine sclk sdio cs i/o_reset rt end address start address 10 10 address step rate 16 ram mode 3 clk baseband data clock i 16 is q qs dds clock up/down counter i channel q channel ram segment registers serial i/o port address data u/d 32 2 (msbs) (lsbs) 16 0 6384-019 figure 39. ram block diagram in figure 39 , the serial i/o port is used to program the contents of the two ram segment registers as well as to load and retrieve the ram contents. the state machine takes care of incrementing or decrementing the ram address locations and controlling the timing of the ram address and data for proper operation. the i-channel and q-channel multiplexers route ram data to baseband scaling multipliers (is/qs) or directly to the baseband data pathway (i/q) when the ram is used in playback mode. the state of the ram playback destination bit determines the destination of the ram data during playback. an i/o update (or a profile change) is necessary to enact a state change of the ram enable or ram playback destination bits, or any of the ram segment register bits. the 32-bit ram data bus is partitioned so that the 16 msbs are designated as i-channel bits and the 16 lsbs are designated as q-channel bits. in playback mode, when driving data directly into the baseband data path, the 16-bit data-words are consid- ered to be signed (that is, twos complement) values. the 16-bit i-and q-words are msb aligned with the 18-bit i and q base- band data path. the two remaining lsbs of each 18-bit baseband channel are driven by the msb of the respective channel. this ensures correct polarity coding when the 16-bit i and q data from the ram translates into 18-bit words for the baseband data path. alternatively, when the ram is driving the baseband scaling multipliers in playback mode, the ram data is considered to represent unsigned, fractional values with a range of 0 to 1 ? 2 ?16 . ram segment registers two dedicated registers (ram segment register 0 and ram segment register 1) control the operation of the ram. each contains the following: ? 10-bit start address word ? 10-bit end address word ? 16-bit address step rate word ? 3-bit ram playback mode word when programming these registers, the user must ensure that the end address is greater than the start address. with the ram segment registers, the user can arbitrarily partition the ram into two independent memory segments. the segment boundaries are specified with the start and end address words in each ram segment register. the playback rate is controlled by the address step rate word (only meaningful when the baseband scaling multipliers serve as the playback destination). the playback mode of the ram is controlled via the ram playback mode word. ram state machine the state machine acts as an address generator for the ram. it is clocked by either the serial i/o port (when the ram is operating in the load/retrieve mode) or the baseband data clock (when the ram is in playback mode). the state machine uses the ram mode bits of the active ram segment register to establish the proper sequence through the specified address range. ram trigger (rt) pin the ram state machine monitors the rt pin for logic state tran- sitions. any state transition triggers the state machine into action. the direction of the logic state transition on the rt pin determines which ram segment register the state machine uses for playback instructions. ram segment register 0 is used if the state machine detects a 0 to 1 transition; ram segment register 1 is used if a 1 to 0 transition is detected.
AD9957 rev. 0 | page 27 of 60 load/retrieve ram operation loading or retrieving the ram contents is a three-step process. 1. program the ram segment registers with start and end addresses defining the boundaries of each independent ram segment. 2. toggle the rt pin with the appropriate transition to select the desired ram segment register. 3. using the serial i/o port, write (or read) the address range specified by the selected ram segment register. figure 40 shows the ram block diagram when used for loading or retrieve operations. ram 32 10 q state machine sclk sdio cs i/o_reset rt end address start address 10 10 address step rate 16 ram mode 3 clk baseband data clock i 16 is q qs dds clock up/down counter i channel q channel serial i/o port address data u/d 32 2 (msbs) (lsbs) 16 06384-020 notes 1. nonessential functional components are rendered in gray. ram segment registers figure 40. ram load/retrieve operation during a load or retrieve operation, the state machine controls an up/down counter to step through the required ram locations. the counter is synchronized with the serial i/o port so that the serial/parallel conversion of the 32-bit words is correctly timed with the generation of the appropriate ram address to properly execute the desired read or write operation. the up/down counter always increments through the address range during serial i/o port operations. because the ram segment registers are completely independent, it is possible to define overlapping address ranges. however, doing so causes the overlapping address locations to be over- written by the most recent write operation. it is recommended that the user avoid defining overlapping address ranges. ram playback operation when the ram has been loaded, it can be used for playback operation. the destination of the playback data is selected via the ram playback destination bit. the active ram segment register is selected by the appropriate transition of the rt pin. the active ram segment register directs the internal state machine by defining the ram address range occupied by the data and the ram playback mode. it also defines the playback rate when the playback destination is the baseband scaling multipliers. although ram load/retrieve operations via the serial i/o port take precedence over playback, it is recommended that the user not attempt ram access via the serial i/o port when the ram enable bit is set. figure 41 is a block diagram showing the functional compo- nents used for ram playback operation when the internal destination is the baseband scaling multipliers. ram 32 10 q state machine sclk sdio cs i/o_reset rt end address start address 10 10 address step rate 16 ram mode 3 clk baseband data clock i 16 is q qs dds clock up/down counter i channel q channel ram segment registers serial i/o port address data u/d 32 2 (msbs) (lsbs) 16 06384-021 notes 1. nonessential functional components are rendered in gray. figure 41. ram playback to baseband scaling multipliers during playback to the baseband scaling multipliers, the address step rate word in the active ram segment register sets the rate at which ram data samples are delivered to the multipliers. the following equations define the ram sample rate and sample interval (t). r m f ratesample ram sysclk 4 = sysclk f rm t 4 = where: r is the rate interpolation factor for the cci filter. m is the 16-bit value of the address step rate word stored in the active ram segment register. if the ram enable bit is set and the baseband scaling multi- pliers are selected as the playback destination, then assertion of an i/o update or profile change causes the multipliers to be driven with a static value of zero. a subsequent state change on the rt pin causes the multipliers to be driven by the data played back from the ram instead of the static zero value. figure 42 is a block diagram showing ram playback operation when the internal destination is the baseband data path. during playback to the baseband data path, the state machine increments/decrements the ram address at the baseband data rate (the address step rate is ignored by the state machine).
AD9957 rev. 0 | page 28 of 60 ram 32 10 q state machine sclk sdio cs i/o_reset rt end address start address 10 10 address step rate 16 ram mode 3 clk baseband data clock i 16 is q qs dds clock up/down counter i channel q channel ram segment registers serial i/o port address data u/d 32 2 (msbs) (lsbs) 16 0 6384-022 notes 1. nonessential functional components are rendered in gray. figure 42. ram playback to baseband data path overview of ram playback modes the ram is operational in any one of four different playback modes. ? ramp-up ? bidirectional ramp ? continuous bidirectional ramp ? continuous recirculate ram playback is only functi onal when the AD9957 is pro- grammed for either the qduc or interpolating dac mode. the ram playback mode is selected via the 3-bit ram playback mode word located in each of the ram segment registers. thus, the ram playback mode is segment dependent. the ram playback mode bits are detailed in table 6 . table 6. ram playback modes ram playback mode bits<2:0> ram playback mode 001 ramp-up 010 bidirectional ramp 011 continuous bidirectional ramp 100 continuous recirculate 000, 101, 110, 111 not valid the continuous bidirectional ramp and continuous recirculate modes are not available when the baseband scaling multipliers serve as the destination of ram playback. ram ramp-up mode in ramp-up mode, upon assertion of an i/o update or a state change on the rt pin, the ram begins playback operation using the parameters programmed into the selected ram segment register. data is extracted from ram over the specified address range contained in the start address and end address of the active ram segment register. the data is delivered at the appropriate rate and to the destination as specified by the ram playback destination bit. the playback rate is governed by the timer internal to the ram state machine and its period (t) is determined by the state of the ram playback destination bit as detailed in the ram playback operation section. the internal state machine begins extracting data from the ram at the start address and continues to extract data until it reaches the end address. upon reaching this address, the state machine halts. a graphic representation of the ramp-up mode appears in figure 43 . the upper trace shows the progression of the ram address from the start address to the end address for the active ram segment register. the address value advances by one with each timeout of the timer internal to the state machine. the circled numbers indicate specific events, explained as follows: event 1an i/o update or state transition on the rt pin. this event initializes the state machine to the start address of the active ram segment register. event 2the state machine reaches the end address of the active ram segment register and halts. start address ram address end address 1 1 pdclk cycle or m dds clock cycles t i/o_update or rt transition 2 1 06384-023 figure 43. ramp-up timing diagram
AD9957 rev. 0 | page 29 of 60 ram bidirectional ramp mode this mode is unique in that the ram segment playback mode word of both ram segment registers must be programmed for ram bidirectional ramp mode. in bidirectional ramp mode, upon assertion of an i/o update, the ram readies for playback operation using the parameters programmed into ram segment register 0. the data is delivered at the appropriate rate and to the destination as specified by the ram playback destination bit. the playback rate is governed by the timer that is internal to the ram state machine, and its period (t) is determined by the state of the ram playback destination bit as detailed in the ram playback operation section. playback begins upon a 0 to 1 logic transition on the rt pin. this instructs the state machine to increment through the address range specified in ram segment register 0 starting with the start address. as long as the rt pin remains logic 1, the state machine continues to play back the ram data until it reaches the end address, at which point the state machine halts. a logic 1 to logic 0 transition on the rt pin instructs the state machine to switch to ram segment register 1 and to decrement through the address range starting with the end address. as long as the rt pin remains logic 0, the state machine continues to play back the ram data until it reaches the start address, at which point the state machine halts. it is important to note that ram segment register 1 is played back in reverse order for bidirectional ramp mode. this must be kept in mind when the ram contents are loaded via the serial i/o port when bidirectional ramp is the intended playback mode. a graphic representation of the bidirectional ramp mode appears in figure 44 . it demonstrates the action of the state machine in response to the rt pin. if the rt pin changes states before the state machine reaches the programmed start or end address, the internal timer is restarted and the direction of the address counter reversed. 1 2 3 4 5 6 7 8 06384-024 1 ram segment 0 1 0 10 t t t t t start address number 1 start address number 0 end address number 1 end address number 0 ram address ram address rt pin 1 pdclk cycle or m dds clock cycles i/o_update figure 44. bidirectional ramp timing diagram
AD9957 rev. 0 | page 30 of 60 the circled numbers in figure 44 indicate specific events, explained as follows: event 1an i/o update or profile change activates the ram bidirectional ramp mode. event 2the rt pin switches to logic 1. the state machine initializes to the start address of ram segment register 0 and begins incrementing the ram address counter. event 3the rt pin remained at logic 1 long enough for the state machine to reach the end address of ram segment register 0, at which point the address counter is halted. event 4the rt pin switches to logic 0. the state machine initializes to the end address of ram segment register 1, resets the internal timer, and begins decrementing the ram address counter. event 5the rt pin switches to logic 1. the state machine initializes to the start address of ram segment register 0, resets the internal timer, and begins incrementing the ram address counter. event 6the rt pin switches to logic 0. the state machine initializes to the end address of ram segment register 1, resets the internal timer, and begins decrementing the ram address counter. event 7the rt pin remained at logic 0 long enough for the state machine to reach the start address of ram segment register 1, at which point the address counter is halted. event 8the rt pin switches to logic 1. the state machine initializes to the start address of ram segment register 0, resets the internal timer, and begins incrementing the ram address counter.
AD9957 rev. 0 | page 31 of 60 start address ram address end address 1 1 pdclk cycle or m dds clock cycles t i/o_update or rt transition 2 3 1 t 06384-025 figure 45. continuous bidirectional ramp timing diagram ram continuous bidirectional ramp mode in continuous bidirectional ramp mode, upon assertion of an i/o update or a state change on the rt pin, the ram begins playback operation using the parameters programmed into the selected ram segment register. data is extracted from ram over the specified address range contained in the start address and end address. the data is delivered at the appropriate rate and to the destination as specified by the ram playback destination bit. the playback rate is governed by the timer internal to the ram state machine and its period ( t) is determined by the state of the ram playback destination bit as detailed in the ram p layback o peration section. after initialization, the internal state machine begins extracting data from the ram at the start address of the active ram segment register and increments the address counter until it reaches the end address, at which point the state machine reverses the direction of the address counter and begins decrementing through the address range. whenever one of the terminal addresses is reached, the state machine reverses the address counter; the process continues indefinitely. note that a change in state of the rt pin aborts the current waveform and the newly selected ram segment register is used to initiate a new waveform. a graphic representation of the continuous bidirectional ramp mode is shown in figure 45 . the circled numbers in figure 45 indicate specific events, explained as follows: event 1an i/o update or state change on the rt pin has activated the ram continuous bidirectional ramp mode. the state machine initializes to the start address of the active ram segment register. the state machine begins incrementing through the specified address range. event 2the state machine reaches the end address of the active ram segment register. event 3the state machine reaches the start address of the active ram segment register. this action continues indefinitely until the next i/o update or state change on the rt pin.
AD9957 rev. 0 | page 32 of 60 06384-026 start address end address 1 1 2 3 4 5 ram adress t 1 pdclk cycle or m dds clock cycles i/o_update or rt transition figure 46. continuous re circulate timing diagram ram continuous recirculate mode the continuous recirculate mode mimics ramp-up mode, except that when the state machine reaches the end address of the active ram segment register, it does not halt. instead, the next timeout of the internal timer causes the state machine to jump to the start address of the active ram segment register. this process continues indefinitely until an i/o update or state change on the rt pin. a state change on the rt pin aborts the current waveform and the newly selected ram segment register initiates a new waveform. a graphic representation of the continuous recirculate mode is shown in figure 46 . the circled numbers in figure 46 indicate specific events, which are explained as follows: event 1an i/o update or state change on the rt pin occurs. this initializes the state machine to the start address of the active ram segment register and causes the state machine to begin incrementing the address counter at the appropriate rate. event 2the state machine reaches the end address of the active ram segment register. event 3the state machine switches to the start address of the active ram segment register. the state machine continues to increment the address counter. event 4the state machine again reaches the end address of the active ram segment register. event 5the state machine switches to the start address of the active ram segment register. the state machine continues to increment the address counter. event 4 and event 5 repeat until an i/o update or state change occurs on the rt pin.
AD9957 rev. 0 | page 33 of 60 clock input (ref_clk) refclk overview the AD9957 supports a number of options for producing the internal sysclk signal (that is, the dac sample clock) via the ref_clk input pins. the ref_clk input can be driven directly from a differential or single-ended source, or it can accept a crystal connected across the two input pins. there is also an internal phase-locked loop (pll) multiplier that can be independently enabled. a block diagram of the ref_clk functionality is shown in figure 47 . the various input configu- rations are controlled by means of the xtal_sel pin and control bits in the cfr3 register. figure 47 also shows how the cfr3 control bits are associated with specific functional blocks. ref_clk ref_clk pll vco select divide charge pump out in pll_loop_filter enable pll_loop_filter drv cfr3 <31:30> refclk_out xtal_sel refclk input select logic syscl k icp cfr3 <21:19> n cfr3 <7:1> vco cfr3 <26:24> 2 input divider bypass cfr3<15> pll_enable cfr3 <8> input divider reset cfr3<14> 94 95 2 90 91 0 1 0 1 2 2 7 3 0 1 06384-028 figure 47. ref_clk block diagram the pll enable bit is used to choose between the pll path or the direct input path. when the direct input path is selected, the ref_clk pins must be driven by an external signal source (single-ended or differential). input frequencies up to 2 ghz are supported. for input frequencies greater than 1 ghz, the input divider must be enabled for proper operation of the device. when the pll is enabled, a buffered clock signal is available at the refclk_out pin. this clock signal is the same frequency as the ref_clk input. this is especially useful when a crystal is connected, because it gives the user a replica of the crystal clock for driving other external devices. the refclk_out buffer is controlled by two bits as listed in table 7 . table 7. refclk_out buffer control cfr3<31:30> refclk_out buffer 00 disabled 01 low output current 10 medium output current 11 high output current crystal driven ref_clk when using a crystal at the ref_clk input, the resonant frequency should be approximately 25 mhz. figure 48 shows the recommended circuit configuration. 06384-027 ref_clk ref_clk 39pf 39pf xtal 90 91 figure 48. crystal connection diagram direct driven ref_clk when driving the ref_clk inputs directly from a signal source, either single-ended or differential signals can be used. with a differential signal source, the ref_clk pins are driven with complementary signals and ac-coupled with 0.1 f capacitors. with a single-ended signal source, either a single- ended-to-differential conversion can be employed or the ref_clk input can be driven single-ended directly. in either case, 0.1 f capacitors are used to ac couple both ref_clk pins to avoid disturbing the internal dc bias voltage of ~1.35 v. see figure 49 for more details. the ref_clk input resistance is ~2.5 k differential (~1.2 k single-ended). most signal sources have relatively low output impedances. the ref_clk input resistance is relatively high, therefore, its effect on the termination impedance is negligible and can usually be chosen to be the same as the output imped- ance of the signal source. the bottom two examples in figure 49 assume a signal source with a 50 output impedance.
AD9957 rev. 0 | page 34 of 60 06384-029 termination ref_clk differential source, differential input. single-ended source, differential input. single-ended source, single-ended input. 90 91 0.1 f 0.1f pecl, lvpecl, or lvds driver ref_clk 90 91 50? 0.1f 0.1f balun (1:1) ref_clk ref_clk ref_clk ref_clk 90 91 0.1f 0.1f 50? figure 49. direct connection diagram phase-locked loop (pll) multiplier an internal phase-locked loop (pll) provides users of the AD9957 the option to use a reference clock frequency that is significantly lower than the system clock frequency. the pll supports a wide range of programmable frequency multiplica- tion factors (12 to 127) as well as a programmable charge pump current and external loop filter components (connected via the pll_loop_filter pin). these features add an extra layer of flexibility to the pll, allowing optimization of phase noise performance and flexibility in frequency plan develop- ment. the pll is also equipped with a pll_lock pin. the pll output frequency range (f sysclk ) is constrained to the range of 420 mhz f sysclk 1 ghz by the internal vco. in addition, the user must program the vco to one of six operating ranges such that f sysclk falls within the specified range. figure 50 and figure 51 summarize these vco ranges. figure 50 shows the boundaries of the vco frequency ranges over the full range of temperature and supply voltage variation for all devices from the available population. the implication is that multiple devices chosen at random from the population and operated under widely varying conditions may require different values to be programmed into cfr3<26:24> to operate at the same frequency. for example, part a chosen randomly from the population, operating in an ambient temperature of ?10c with a system clock frequency of 900 mhz may require cfr3<26:24> to be set to 100b. whereas part b chosen randomly from the population, operating in an ambient temperature of 90c with a system clock frequency of 900 mhz may require cfr3<26:24> to be set to 101b. if a frequency plan is chosen such that the system clock frequency operates within one set of boundaries (as shown in figure 51 ), the required value in cfr3<26:24> is consistent from part to part. figure 51 shows the boundaries of the vco frequency ranges over the full range of temperature and supply voltage variation for an individual device selected from the population. figure 51 shows that the vco frequency ranges for a single device always overlap when operated over the full range of conditions. in conclusion, if a user wants to retain a single default value for cfr3<26:24>, a frequency that falls into one of the ranges found in figure 50 should be selected. additionally, for any given individual device the vco frequency ranges overlap, meaning that any given device exhibits no gaps in its frequency coverage across vco ranges over the full range of conditions. 06384-057 v co0 v co1 v co2 v co3 v co4 v co5 395 495 595 695 795 895 995 flow = 400 fhigh = 460 flow = 455 fhigh = 530 flow = 530 fhigh = 615 flow = 760 fhigh = 875 flow = 920 fhigh = 1030 flow = 650 fhigh = 790 (mhz) figure 50. vco ranges including atypical wafer process skew 335 435 535 635 735 835 935 1035 1135 v co0 v co1 v co2 v co3 v co4 v co5 06384-056 flow = 342 fhigh = 522 flow = 402 fhigh = 602 flow = 469 fhigh = 709 flow = 574 fhigh = 904 (mhz) flow = 646 fhigh = 966 flow = 810 fhigh = 1180 figure 51. typical vco ranges table 8. vco range bit settings vco sel bits (cfr3<26:24>) vco range 000 vco0 001 vco1 010 vco2 011 vco3 100 vco4 101 vco5 110 pll bypassed 111 pll bypassed
AD9957 rev. 0 | page 35 of 60 pll charge pump the charge pump current (i cp ) is programmable to provide the user with additional flexibility to optimize the pll performance. table 9 lists the bit settings vs. the nominal charge pump current. table 9 . pll charge pump current i cp (cfr3<21:19>) charge pump current (i cp in a) 000 212 001 237 010 262 011 287 100 312 101 337 110 363 111 387 external pll loop filter components the pll_loop_filter pin provides a connection interface to attach the external loop filter components. the ability to use custom loop filter components gives the user more flexibility to optimize the pll performance. the pll and external loop filter components are shown in figure 52 . pfd cp pll_loop_filter vco n pll out pll in avdd refclk pll 2 r1 c1 c2 06384-030 figure 52. refclk pll external loop filter in the prevailing literature, this configuration yields a third- order, type ii pll. to calculate the loop filter component values, begin with the feedback divider value (n), the gain of the phase detector (k d ), and the gain of the vco (k v ) based on the programmed vco sel bit settings (see table 1 for k v ). the loop filter component values depend on the desired open-loop bandwidth (f ol ) and phase margin (), as follows: () ? ? ? ? ? ? ? ? + = kk nf r1 vd ol sin 1 1 (7) ( ) () 2 2 tan ol vd fn kk c1 = (8) () () ? ? ? ? ? ? ? ? ? = fn kk c2 ol vd cos sin1 )2( 2 (9) where: k d equals the programmed value of i cp . k v is taken from table 1. ensure that proper units are used for the variables in equation 7 through equation 9. i cp must be in amps, not a as appears in table 9 ; k v must be in hz/v, not mhz/v as listed in table 1 ; the loop bandwidth (f ol ) must be in hz; the phase margin () must be in radians. for example, suppose the pll is programmed such that i cp = 287 a, k v = 625 mhz/v, and n = 25. if the desired loop bandwidth and phase margin are 50 khz and 45, respectively, the loop filter component values are r1 = 52.85 , c1 = 145.4 nf, and c2 = 30.11 nf. pll lock indication when the pll is in use, the pll_lock pin provides an active high indication that the pll has locked to the refclk input signal. when the pll is bypassed the pll_lock pin defaults to logic 0.
AD9957 rev. 0 | page 36 of 60 additional features output shift keying (osk) the osk function ( figure 53 ) is only available in single tone mode. it allows the user to control the output signal amplitude of the dds. both manual and automatic modes are available. 06384-031 osk enable amplitude scale factor (asf<15:2>) amplitude ramp rate (asf<31:16>) amplitude step size (asf<1:0>) manual osk external auto osk enable osk dds clock to dds amplitude control parameter 60 load arr at i/o_update osk controller 14 16 14 2 figure 53. osk block diagram the operation of the osk function is governed by four control register bits, the external osk pin, and the entire 32 bits of the asf register. the primary control for the osk block is the osk enable bit. when this bit is set, the osk function is enabled, otherwise, the osk function is disabled. when disabled, the other osk input controls are ignored and the internal clocks are shut down to conserve power. when the osk function is enabled, automatic and manual operation is selected via the select auto-osk bit. when this bit is set, the automatic mode is active, otherwise, the manual mode is active. manual osk in manual mode, output amplitude is varied by successive write operations to the amplitude scale factor portion of the asf register. the rate at which amplitude changes can be applied to the output signal is limited by the speed of the serial i/o port. in manual mode, the osk pin functionality depends on the state of the manual osk external control bit. when this bit is clear, the osk pin is inoperative. when this bit is set, the osk pin can be used to switch the output amplitude between the programmed amplitude scale factor value and zero. a logic 0 on the osk pin forces the output amplitude to zero whereas a logic 1 on the osk pin causes the output amplitude to be scaled by the amplitude scale factor value. automatic osk in automatic mode, the osk function automatically generates a linear amplitude vs. time profile (or amplitude ramp). the amplitude ramp is controlled via three parameters, as follows: ? the maximum amplitude scale factor ? the amplitude step size ? the time interval between steps the amplitude ramp parameters reside in the 32-bit asf register and are programmed via the serial i/o port. the amplitude step interval is set using the 16-bit amplitude ramp rate portion of the asf register (bits<31:16>). the maximum amplitude scale factor is set using the 14-bit amplitude scale factor in the asf register (bits<15:2>). the amplitude step size is set using the two-bit amplitude step size portion of the asf register (bits<1:0>). the direction of the ramp (positive or negative slope) is controlled by the external osk pin. when the osk pin is a logic 1, the slope is positive; otherwise, it is negative. the step interval is controlled by a 16-bit programmable timer that is clocked at a rate of ? f sysclk . the timer period sets the interval between amplitude steps. the step time interval (t) is given by sysclk f m t 4 = where m is the 16-bit number stored in the amplitude ramp rate portion of the asf register. for example, if f sysclk = 750 mhz and m = 23218 (0x5ab2), then t 123.8293 s. the output of the osk function is a 14-bit unsigned data bus that controls the amplitude of the dds output (as long as the osk enable bit is logic 1). when the osk pin is logic 1, the osk output value starts at 0 and increments by the programmed amplitude step size until it reaches the programmed maximum amplitude value. when the osk pin is logic 0, the osk output starts at its present value and decrements by the programmed amplitude step size until it reaches 0. the osk output does not necessarily attain the maximum amplitudethe osk pin may switch to logic 0 before attaining the maximum value. the osk output does not necessarily reach a value of zerothe osk pin may switch to logic 1 before attaining the zero value. the osk output is initialized to 0 at power-up. it is also set to 0 when the osk enable bit is logic 0 or when the osk enable bit is logic 1, but the select auto-osk bit is logic 0. the amplitude step size of the osk output is set by the amplitude step size bits in the asf register according to the values listed in table 10 . the step size refers to the lsb weight of the 14-bit osk output. the osk output cannot exceed the maximum amplitude value programmed into the asf register.
AD9957 rev. 0 | page 37 of 60 table 10. osk amplitude step size asf<1:0> amplitude step size 00 1 01 2 10 4 11 8 as mentioned earlier, the step interval is controlled by a 16-bit programmable timer. normally, this timer is loaded with the programmed timing value whenever the timer expires, thus initiating a new timing cycle. however, three events cause the timer to have its timing value reloaded prior to the timer expiring. one such event is when the select auto-osk bit is transitioned from a logic 0 state to a logic 1 state followed by an i/o update. a second such event is a change of state in the osk pin. the third event is dependent on the status of the load arr @ i/o update bit. if this bit is logic 0, then no action occurs, otherwise, when the i/o_update pin is asserted (or a profile change occurs), the timer resets to its initial starting point. profiles each of the three operating modes of the AD9957 support the use of profiles, which consist of a group of registers containing pertinent operating parameters for a particular operating mode. profiles enable rapid switching between parameter sets. profile parameters are programmed via the serial i/o port. once programmed, a specific profile is activated by means of three external pins (profile<2:0>). a particular profile is activated by providing the appropriate logic levels to the profile control pins per the settings listed in table 11 . table 11. profile control pins profile<2:0> active profile 000 0 001 1 010 2 011 3 100 4 101 5 110 6 111 7 consider an application of basic two-tone frequency shift keying (fsk) where binary data is transmitted by selecting between two different frequencies: a mark frequency (logic 1) and a space frequency (logic 0). to accommodate fsk, the profile 0 register is programmed with the appropriate frequency tuning word for a space, and the profile 1 register is programmed with the appropriate frequency tuning word for a mark. then, with the profile1 and profile2 pins tied to logic 0, the profile0 pin is used to transmit the data bits. the logic state of the profile0 pin causes the appropriate mark and space frequencies to be generated. i/o_update pin by default, the i/o_update pin is an input that serves as a strobe signal to allow synchronous update of the device operating parameters. for example, frequency, phase, and amplitude con- trol words for the dds can be programmed using the serial i/o port. however, the serial i/o port is an asynchronous interface; consequently, programming of the device operating parameters using the i/o port is not synchronized with the internal timing. using the pin, i/o_update, the user can synchronize the application of certain programmed operating parameters with external circuitry when new parameters are programmed into the i/o registers. a rising edge on i/o_update initiates transfer of the register contents to the internal workings of the device. the transfer of programmed data from the programming registers to the internal hardware is also accomplished by changing the state of the profile pins. automatic i/o update the AD9957 offers an option whereby the i/o update function is asserted automatically rather than relying on an external signal supplied by the user. this feature is enabled by setting the internal i/o update active bit in cfr2. when this feature is active, the i/o_update pin becomes an output pin. it generates an active high pulse each time an inter- nal i/o update occurs. the duration of the pulse is approximately 12 cycles of sysclk. this i/o update strobe can be used to notify an external controller that the device has generated an i/o update internally. the repetition rate of the internal i/o update is programmed via the serial i/o port. two parameters control the repetition rate. the first parameter consists of the two i/o update rate control bits in cfr2. the second parameter is the 32-bit word in the i/o update rate register that sets the range of an internal counter. the i/o update rate control bits establish a divide by 1, 2, 4, or 8 of a clock signal that runs at ? f sysclk . the output of the divider clocks the aforementioned 32-bit internal counter. the repetition rate of the i/o update is given by b f f a sysclk update oi 2 _/ = where: a is the value of the 2-bit word comprising the i/o update rate control bits. the default value of a is 0. b is the value of the 32-bit word stored in the i/o update rate register. the default value of b is 0xffff. if b is programmed to 0x0003 or less, the i/o_update pin no longer pulses, but assumes a static logic 1 state.
AD9957 rev. 0 | page 38 of 60 power-down control the AD9957 offers the ability to independently power down four specific sections of the device. power-down functionality applies to the digital core, dac, auxiliary dac, and refclk input. a power-down of the digital core disables the ability to update the serial i/o port. however, the digital power-down bit can still be cleared via the serial port to prevent the possibility of a nonrecoverable state. software power-down is controlled through four independent power-down bits in cfr1. software control requires forcing the ext_pwr_dwn pin to a logic 0 state. in this case, setting the desired power-down bits (via the serial i/o port) powers down the associated functional block; clearing the bits restores the function. alternatively, all four functions can be simultaneously powered down via external hardware control through the ext_pwr_dwn pin. forcing this pin to logic 1, powers down all four circuit blocks, regardless of the state of the power-down bits. that is, the independent power-down bits in cfr1 are ignored and overridden when ext_pwr_dwn is logic 1. based on the state of the external power-down control bit, the ext_pwr_dwn pin produces either a full power-down or a fast recovery power-down. the fast recovery power-down mode maintains power to the dac bias circuitry and the pll, vco, and input section of the refclk circuitry. although the fast recovery power-down does not conserve as much power as the full power-down, it allows the device to very quickly awaken from the power-down state. general-purpose i/o (gpio) port the gpio function is only available when the AD9957 is programmed for qduc mode and the blackfin interface mode is active. because the blackfin serial interface uses only two of the 18 parallel data port pins (d<5:4>), the remaining 16 pins (d<17:6> and d<3:0>) are available as a gpio port. each of these 16 pins is assigned a unique bit in both the 16-bit gpio configuration register and the 16-bit gpio data register. the status of each bit in the gpio configuration register assigns the associated pin as either a gpio input or output (0 = input, 1 = output) based on the data listed in table 12 . when a gpio pin is programmed as an output, the logic state written to the associated bit of the gpio data register (via the serial i/o port) appears at the gpio pin. when a gpio pin is programmed as an input, the logic state of the gpio pin can be read (via the serial i/o port) in the associated bit position in the gpio data register. note that the gpio data register does not require an i/o update. table 12. gpio pins vs. configuration and data register bits pin label configuration bit data bit d17 15 15 d16 14 14 d15 13 13 d14 12 12 d13 11 11 d12 10 10 d11 9 9 d10 8 8 d9 7 7 d8 6 6 d7 5 5 d6 4 4 d3 3 3 d2 2 2 d1 1 1 d0 0 0
AD9957 rev. 0 | page 39 of 60 synchronization of multiple devices the internal clocks of the AD9957 provide the timing for the propagation of data along the baseband signal processing path. these internal clocks are derived from the internal system clock (sysclk) and are all submultiples of the sysclk frequency. the logic state of all of these clocks in aggregate during any given sysclk cycle defines a unique clock state. the clock state advances with each cycle of sysclk, but the sequence of clock states is periodic. by definition, multiple devices are synchro- nized when their clock states match and they transition between states simultaneously. clock synchronization allows the user to asynchronously program multiple devices, but synchronously activate the programming by applying a coincident i/o update to all devices. it also allows multiple devices to operate in unison when the parallel port is in use with either the qduc or inter- polating dac mode (see figure 57 ). the function of the synchronization logic in the AD9957 is to force the internal clock generator to a predefined state coincident with an external synchronization signal applied to the sync_in pins. if all devices are forced to the same clock state in synchro- nization with the same external signal, then the devices are, by definition, synchronized. figure 54 is a block diagram of the synchronization function. the synchronization logic is divided into two independent blocks, a sync generator and a sync receiver, both of which use the local sysclk signal for internal timing. sync generator ref_clk 5 sysclk internal clocks 6 5 4 sync receiver sync generator enable sync generator delay sync polarity 90 91 9 10 sync_out ref_clk input circuitry 7 8 12 sync_in sync_smp_err sync validation delay sync state preset value sync timing validation disable clock generator setup and hold validation sync receiver enable sync receiver delay 06384-032 input delay and edge detection figure 54. synchronization circuit block diagram the synchronization mechanism relies on the premise that the refclk signal appearing at each device is edge aligned with all others as a result of the external refclk distribution system (see figure 57 ). the sync generator block is shown in figure 55 . it is activated via the sync generator enable bit. it allows for one AD9957 in a group to function as a master timing source with the remaining devices slaved to the master. sysclk sync generator enable sync generator delay sync polarity sync_out 0 1 dq r progammable delay 16 n 5 9 10 9 10 lvds driver 06384-033 figure 55. sync generator the sync generator produces a clock signal that appears at the sync_out pins. this clock is delivered by an lvds driver and exhibits a 50% duty cycle. the clock has a fixed frequency given by n f f sysclk syncout 16 = where n is 1 when the AD9957 is configured in the single tone mode, but is equal to the programmed interpolation factor of the cci filter when configured in either the qduc or interpolating dac mode. the clock at the sync_out pins synchronizes with either the rising or falling edge of the internal sysclk signal as determined by the sync polarity bit. because the sync_out signal is synchro- nized with the internal sysclk of the master device, the master device sysclk serves as the reference timing source for all slave devices. the user can adjust the output delay of the sync_out signal in steps of ~150 ps by programming the 5-bit sync gen- erator delay word via the serial i/o port. the programmable output delay facilitates added edge timing flexibility to the overall synchronization mechanism. the sync receiver block (shown in figure 56 ) is activated via the sync receiver enable bit. the sync receiver consists of three sub- sections: the input delay and edge detection block, the internal clock generator block, and the setup-and-hold validation block. the clock generator block remains operational even when the sync receiver is not enabled.
AD9957 rev. 0 | page 40 of 60 lvds receiver progammable delay 5 internal clocks clock state 6 sync state preset value sync pulse sysclk setup and hold validation 4 d1 q1 load d6 d5 d4 d3 d2 q6 q5 q4 q3 q2 delayed sync-in signal sync receiver delay sync receiver enable sync_smp_err sync_in 7 8 12 rising edge detector and strobe generator sync timing validation disable sync validation delay 06384-034 clock generator figure 56. sync receiver clock source sync in sync out ref_clk AD9957 number 1 master device fpga data fpga data fpga data edge aligned a t ref_cl k inputs. edge aligned at sync_in inputs. pdclk sync in sync out ref_clk AD9957 number 2 pdclk sync in sync out ref_clk AD9957 number 3 pdclk (for example ad951x) clock distribution and delay equalization synchronization distribution and delay equalization (for example ad951x) 06384-035 figure 57. multichip synchronization example the sync receiver accepts a periodic clock signal at the sync_in pins. this signal is assumed to originate from an lvds-compatible driver. the user can delay the sync_in signal in steps of ~150 ps by programming the 5-bit sync receiver delay word in the multichip sync register. for clarification, the signal at the output of the programmable delay is referred to as the delayed sync-in signal. the edge detection logic generates a synchronization pulse having a duration of one sysclk cycle with a repetition rate equal to the frequency of the signal applied to the sync_in pins. the sync pulse is generated as a result of sampling the rising edge of the delayed sync-in signal with the rising edge of the local sysclk. the synchronization pulse is routed to the internal clock generator, which behaves as a presettable counter clocked at the sysclk rate. the sync pulse presets the counter to a predefined state (programmable via the 6-bit sync state preset value word in the multichip sync register). the predefined state is only active for a single sysclk cycle, after which the clock generator resumes cycling through its state sequence at the sysclk rate. this unique state presetting mechanism gives the user the flexibility to synchronize devices with specific relative clock state offsets (by assigning a different sync state preset value word to each device). multiple device synchronization is accomplished by providing each AD9957 with a sync_in signal that is edge aligned across all the devices. if the sync_in signal is edge aligned at all devices, and all devices have the same sync receiver delay and sync state preset value, then they all have matching clock states (that is, they are synchronized). this concept is shown in figure 57 in
AD9957 rev. 0 | page 41 of 60 which three AD9957s are synchronized with one device operating as a master timing unit and the others as slave units. the master device must have its sync_in pins included as part of the synchronization distribution and delay equalization mecha- nism for it to be synchronized with the slave units. the synchronization mechanism begins with the clock distribu- tion and delay equalization block, which ensures that all devices receive an edge aligned refclk signal. however, even though the refclk signal is edge aligned among all devices, this alone does not guarantee that the clock state of each internal clock generator is coordinated with the others. this is the role of the synchronization and delay equalization block. this block accepts the sync_out signal generated by the master device and redistributes it to the sync_in input of the slave units (as well as feeding it back to the master). the goal of the redistributed sync_out signal from the master device is to deliver an edge aligned sync_in signal to all of the sync receivers. assuming that all devices share the same refclk edge (due to the clock distribution and delay equalization block) and that all devices share the same sync_in edge (due to the synchroniza- tion and delay equalization block), then all devices should be generating an internal sync pulse in unison (assuming they all have the same sync receiver delay value). with the further stipulation that all devices have the same sync state preset value, then the synchronized sync pulses cause all of the devices to assume the same predefined clock state simultaneously. that is, the internal clocks of all devices are fully synchronized. the synchronization mechanism depends on the reliable generation of a sync pulse by the edge detection block in the sync receiver. generation of a valid sync pulse, however, requires proper sampling of the rising edge of the delayed sync-in signal with the rising edge of the local sysclk. if the edge timing of these signals fails to meet the setup or hold time requirements of the internal latches in the edge detection circuitry, then the proper generation of the sync pulse is in jeopardy. the setup-and-hold validation block (see figure 58 ) gives the user a means to validate that proper edge timing exists between the two signals. the setup-and-hold validation block can be disabled via the sync timing validation disable bit in control function register 2. the validation block makes use of a user-specified time window (programmable in increments of ~150 ps via the 4-bit sync validation delay word in the multichip sync register). the setup validation and hold validation circuits use latches identical to those in the rising edge detector and strobe generator. the programmable time window is used to skew the timing between the rising edges of the local sysclk signal and the rising edges of the delayed sync-in signal. if either the hold or setup valida- tion circuits fail to detect a valid edge sample, the condition is indicated externally via the sync_smp_err pin (active high). the user must choose a sync validation delay value that is a reasonable fraction of the sysclk period. for example, if the sysclk frequency is 1 ghz (1 ns period), then a reasonable value is 1 or 2 (150 ps or 300 ps). choosing too large a value can cause the sync_smp_err pin to generate false error signals. choosing too small a value may cause instability. sync pulse sysclk delay delay check logic 4 sync validation delay 4 4 sync_smp_err sync receiver 12 sync timing validation disable setup validation hold validation dq 12 setup and hold validation to clock generation logic from sync receiver delay logic dq dq rising edge detector and strobe generator 06384-036 figure 58. sync timing validation block
AD9957 rev. 0 | page 42 of 60 serial programming control interfaceserial i/o the AD9957 serial port is a flexible, synchronous serial commu- nications port allowing easy interface to many industry-standard microcontrollers and microprocessors. the serial i/o is compatible with most synchronous transfer formats, including both the motorola 6905/11 spi and intel? 8051 ssr protocols. the interface allows read/write access to all registers that configure the AD9957. msb-first or lsb-first transfer formats are supported. in addition, the serial interface port can be configured as a single pin input/output (sdio) allowing a two- wire interface, or it can be configured as two unidirectional pins for input/output (sdio/sdo) enabling a 3-wire interface. two optional pins (i/o_reset and cs ) enable greater flexibility for designing systems with the AD9957. general serial i/o operation there are two phases to a serial communications cycle. the first is the instruction phase to write the instruction byte into the AD9957. the instruction byte contains the address of the register to be accessed (see the register map and bit descriptions section) and also defines whether the upcoming data transfer is a write or read operation. for a write cycle, phase 2 represents the data transfer between the serial port controller to the serial port buffer. the number of bytes transferred is a function of the register being accessed. for example, when accessing the control function register 2 (address 0x01), phase 2 requires that four bytes be transferred. each bit of data is registered on each corresponding rising edge of sclk. the serial port controller expects that all bytes of the register be accessed, otherwise the serial port controller is put out of sequence for the next communication cycle. however, one way to write fewer bytes than required is to use the i/o_reset pin feature. the i/o_reset pin function can be used to abort an i/o operation and reset the pointer of the serial port con- troller. after an i/o reset, the next byte is the instruction byte. note that every completed byte written prior to an i/o reset is preserved in the serial port buffer. partial bytes written are not preserved. at the completion of any communication cycle, the AD9957 serial port controller expects the next eight rising sclk edges to be the instruction byte for the next communi- cation cycle. after a write cycle, the programmed data resides in the serial port buffer and is inactive. i/o_update transfers data from the serial port buffer to active registers. the i/o update can either be sent after each communication cycle or when all serial operations are complete. in addition, a change in profile pins can initiate an i/o update. for a read cycle, phase 2 is the same as the write cycle with the following differences: data is read from the active registers, not the serial port buffer, and data is driven out on the falling edge of sclk. instruction byte the instruction byte contains the following information as shown in the instruction byte bit map. instruction byte information bit map msb lsb d7 d6 d5 d4 d3 d2 d1 d0 r/ w x x a4 a3 a2 a1 a0 r/ w bit 7 of the instruction byte determines whether a read or write data transfer occurs after the instruction byte write. set indicates read operation. cleared indicates a write operation. x, xbit 6 and bit 5 of the instruction byte are dont care. a4, a3, a2, a1, a0bit 4, bit 3, bit 2, bit 1, and bit 0 of the instruction byte determine which register is accessed during the data transfer portion of the communications cycle. serial i/o port pin descriptions sclkserial clock the serial clock pin is used to synchronize data to and from the AD9957 and to run the internal state machines. cs chip select bar active low input that allows more than one device on the same serial communications line. the sdo and sdio pins go to a high impedance state when this input is high. if driven high during any communications cycle, that cycle is suspended until cs is reactivated low. chip select ( cs ) can be tied low in systems that maintain control of sclk. sdioserial data input/output data is always written into the AD9957 on this pin. however, this pin can be used as a bidirectional data line. bit 1 of cfr1 register address 0x00 controls the configuration of this pin. the default is cleared, which configures the sdio pin as bidirectional. sdoserial data out data is read from this pin for protocols that use separate lines for transmitting and receiving data. in the case where the AD9957 operates in a single bidirectional i/o mode, this pin does not output data and is set to a high impedance state. i/o_resetinput/output reset i/o_reset synchronizes the i/o port state machines without affecting the addressable registers contents. an active high input on the i/o_reset pin causes the current communication cycle to abort. after i/o_reset returns low (logic 0), another communication cycle can begin, starting with the instruction byte write.
AD9957 rev. 0 | page 43 of 60 i/o_updateinput/output update the i/o_update initiates the transfer of written data from the i/o port buffer to active registers. i/o_update is active on the rising edge and its pulse width must be greater than one sync_clk period. it is either an input or output pin depending on the programming of the internal i/o update active bit. serial i/o timing diagrams the diagrams below provide basic examples of the timing relationships between the various control signals of the serial i/o port. most of the bits in the register map are not transferred to their internal destinations until assertion of an i/o update, which is not included in the timing diagrams that follow. msb/lsb transfers the AD9957 serial port can support both most significant bit (msb) first or least significant bit (lsb) first data formats. this functionality is controlled by bit 0 in control function register 1 (0x00). the default format is msb first. if bit 0 is set high, the serial port is configured for lsb-first format. if lsb first is active, all data, including the instruction byte, must follow lsb-first convention. note that the highest number found in the bit range column for each register (see the register map and bit descriptions section and table 13 ) is the msb and the lowest number is the lsb for that register. 06384-037 i 7 sdio instruction cycle data transfer cycle s cl k cs i 6 i 5 i 4 i 3 i 2 i 1 i 0 d 7 d 6 d 5 d 4 d 3 d 2 d 1 d 0 figure 59. serial port write timingclock stall low 06384-038 d o7 instruction cycle data transfer cycle don't care i 7 i 6 i 5 i 4 i 3 i 2 i 1 i 0 sdio sclk cs sdo d o6 d o5 d o4 d o3 d o2 d o1 d o0 figure 60. 3-wire serial port read timingclock stall low 06384-039 i 7 sdio instruction cycle data transfer cycle s cl k cs i 6 i 5 i 4 i 3 i 2 i 1 i 0 d 7 d 6 d 5 d 4 d 3 d 2 d 1 d 0 figure 61. serial port write timingclock stall high 06384-040 i 7 sdio instruction cycle data transfer cycle scl k cs i 6 i 5 i 4 i 3 i 2 i 1 i 0 d o7 d o6 d o5 d o4 d o3 d o2 d o1 d o0 figure 62. 2-wire serial port read timingclock stall high
AD9957 rev. 0 | page 44 of 60 register map and bit descriptions register map note that the highest number found in the bit range column for each register in the following tables is the msb and the lowest number is the lsb for that register. table 13. control registers register name (serial address) bit range (internal address) bit 7 (msb) bit 6 bit 5 bit4 bit 3 bit 2 bit 1 bit 0 (lsb) default value <31:24> ram enable open ram playback destination open operating mode 0x00 <23:16> manual osk external control inverse sinc filter enable clear cci open select dds sine output 0x00 <15:8> open autoclear phase accum open clear phase accum load arr @ i/o update osk enable select auto- osk 0x00 control function register 1 cfr1 (0x00) <7:0> digital power- down dac power- down refclk input power-down aux dac power-down external power-down control auto power-down enable sdio input only lsb first 0x00 <31:24> blackfin interface mode active blackfin bit order blackfin early frame sync enable open 0x00 <23:16> internal i/o update active sync_clk enable open read effective ftw 0x40 <15:8> i/o update rate control pdclk rate control data format pdclk enable pdclk invert txenable invert q-first data pairing 0x08 control function register 2 cfr2 (0x01) <7:0> matched latency enable data assembler hold last value sync timing validation disable open 0x20 <31:24> drv0<1:0> open vco sel<2:0> 0x1f <23:16> open i cp <2:0> open 0x3f <15:8> refclk input divider bypass refclk input divider resetb open pll enable 0x40 control function register 3 cfr3 (0x02) <7:0> n<6:0> open 0x00 <31:24> open 0x00 <23:16> open 0x00 <15:8> open 0x7f auxiliary dac control register (0x03) <7:0> fsc<7:0> 0x7f <31:24> i/o update rate<31:24> 0xff <23:16> i/o update rate<23:16> 0xff <15:8> i/o update rate<15:8> 0xff i/o update rate register (0x04) <7:0> i/o update rate<7:0> 0xff
AD9957 rev. 0 | page 45 of 60 table 14. ram, asf, multichip sync, and profile 0 registers register name (serial address) bit range (internal address) bit 7 (msb) bit 6 bit5 bit 4 bit 3 bit 2 bit 1 bit 0 (lsb) default value <47:40> ram address step rate 0<15:8> <39:32> ram address step rate 0<7:0> <31:24> ram end address 0<9:2> <23:16> ram end address 0<1:0> open <15:8> ram start address 0<9:2> ram segment register 0 (0x05) <7:0> ram start address 0 <1:0> open ram playback mode 0<2:0> <47:40> ram address step rate 1<15:8> <39:32> ram address step rate 1<7:0> <31:24> ram end address 1<9:2> <23:16> ram end address 1<1:0> open <15:8> ram start address 1<9:2> ram segment register 1 (0x06) <7:0> ram start address 1<1:0> open ram playback mode 1<2:0> <31:24> amplitude ramp rate<15:8> 0x00 <23:16> amplitude ramp rate<7:0> 0x00 <15:8> amplitude scale factor<13:6> 0x00 amplitude scale factor register (asf) (0x09) <7:0> amplitude scale factor<5:0> amplitude step size<1:0> 0x00 <31:24> sync validation delay<3:0> sync receiver enable sync generator enable sync generator polarity open 0x00 <23:16> sync state preset value<5:0> open 0x00 <15:8> sync generator delay<4:0> open 0x00 multichip sync register (0x0a) <7:0> sync receiver delay<4:0> open 0x00 <63:56> open amplitude scale factor<13:8> <55:48> amplitude scale factor<7:0> <47:40> phase offset word<15:8> <39:32> phase offset word<7:0> <31:24> frequency tuning word<31:24> <23:16> frequency tuning word<23:16> <15:8> frequency tuning word<15:8> profile 0 register single tone (0x0e) <7:0> frequency tuning word<7:0> <63:56> cci interpolation rate<7:2> spectral invert inverse cci bypass <55:48> output scale factor <47:40> phase offset word<15:8> <39:32> phase offset word<7:0> <31:24> frequency tuning word<31:24> <23:16> frequency tuning word<23:16> <15:8> frequency tuning word<15:8> profile 0 register qduc (0x0e) <7:0> frequency tuning word<7:0>
AD9957 rev. 0 | page 46 of 60 table 15. profile 1, profile 2, and profile 3 registers register name (serial address) bit range (internal address) bit 7 (msb) bit 6 bit 5 bit 4 bit 3 bit 2 bit 1 bit 0 (lsb) default value <63:56> open amplitude scale factor<13:8> n/a <55:48> amplitude scale factor<7:0> n/a <47:40> phase offset word<15:8> n/a <39:32> phase offset word<7:0> n/a <31:24> frequency tuning word<31:24> n/a <23:16> frequency tuning word<23:16> n/a <15:8> frequency tuning word<15:8> n/a profile 1 register single tone (0x0f) <7:0> frequency tuning word<7:0> n/a <63:56> cci interpolation rate<7:2> spectral invert inverse cci bypass n/a <55:48> output scale factor n/a <47:40> phase offset word<15:8> n/a <39:32> phase offset word<7:0> n/a <31:24> frequency tuning word<31:24> n/a <23:16> frequency tuning word<23:16> n/a <15:8> frequency tuning word<15:8> n/a profile 1 register qduc (0x0f) <7:0> frequency tuning word<7:0> n/a <63:56> open amplitude scale factor<13:8> n/a <55:48> amplitude scale factor<7:0> n/a <47:40> phase offset word<15:8> n/a <39:32> phase offset word<7:0> n/a <31:24> frequency tuning word<31:24> n/a <23:16> frequency tuning word<23:16> n/a <15:8> frequency tuning word<15:8> n/a profile 2 register single tone (0x10) <7:0> frequency tuning word<7:0> n/a <63:56> cci interpolation rate<7:2> spectral invert inverse cci bypass n/a <55:48> output scale factor n/a <47:40> phase offset word<15:8> n/a <39:32> phase offset word<7:0> n/a <31:24> frequency tuning word<31:24> n/a <23:16> frequency tuning word<23:16> n/a <15:8> frequency tuning word<15:8> n/a profile 2 register qduc (0x10) <7:0> frequency tuning word<7:0> n/a <63:56> open amplitude scale factor<13:8> n/a <55:48> amplitude scale factor<7:0> n/a <47:40> phase offset word<15:8> n/a <39:32> phase offset word<7:0> n/a <31:24> frequency tuning word<31:24> n/a <23:16> frequency tuning word<23:16> n/a <15:8> frequency tuning word<15:8> n/a profile 3 register single tone (0x11) <7:0> frequency tuning word<7:0> n/a <63:56> cci interpolation rate<7:2> spectral invert inverse cci bypass n/a <55:48> output scale factor n/a <47:40> phase offset word<15:8> n/a <39:32> phase offset word<7:0> n/a <31:24> frequency tuning word<31:24> n/a <23:16> frequency tuning word<23:16> n/a <15:8> frequency tuning word<15:8> n/a profile 3 register qduc (0x11) <7:0> frequency tuning word<7:0> n/a
AD9957 rev. 0 | page 47 of 60 table 16. profile 4, profile 5, and profile 6 registers register name (serial address) bit range (internal address) bit 7 (msb) bit 6 bit 5 bit 4 bit 3 bit 2 bit 1 bit 0 (lsb) default value <63:56> open amplitude scale factor<13:8> n/a <55:48> amplitude scale factor<7:0> n/a <47:40> phase offset word<15:8> n/a <39:32> phase offset word<7:0> n/a <31:24> frequency tuning word<31:24> n/a <23:16> frequency tuning word<23:16> n/a <15:8> frequency tuning word<15:8> n/a profile 4 register single tone (0x12) <7:0> frequency tuning word<7:0> n/a <63:56> cci interpolation rate<7:2> spectral invert inverse cci bypass n/a <55:48> output scale factor n/a <47:40> phase offset word<15:8> n/a <39:32> phase offset word<7:0> n/a <31:24> frequency tuning word<31:24> n/a <23:16> frequency tuning word<23:16> n/a <15:8> frequency tuning word<15:8> n/a profile 4 register qduc (0x12) <7:0> frequency tuning word<7:0> n/a <63:56> open amplitude scale factor<13:8> n/a <55:48> amplitude scale factor<7:0> n/a <47:40> phase offset word<15:8> n/a <39:32> phase offset word<7:0> n/a <31:24> frequency tuning word<31:24> n/a <23:16> frequency tuning word<23:16> n/a <15:8> frequency tuning word<15:8> n/a profile 5 register single tone (0x13) <7:0> frequency tuning word<7:0> n/a <63:56> cci interpolation rate<7:2> spectral invert inverse cci bypass n/a <55:48> output scale factor n/a <47:40> phase offset word<15:8> n/a <39:32> phase offset word<7:0> n/a <31:24> frequency tuning word<31:24> n/a <23:16> frequency tuning word<23:16> n/a <15:8> frequency tuning word<15:8> n/a profile 5 register qduc (0x13) <7:0> frequency tuning word<7:0> n/a <63:56> open amplitude scale factor<13:8> n/a <55:48> amplitude scale factor<7:0> n/a <47:40> phase offset word<15:8> n/a <39:32> phase offset word<7:0> n/a <31:24> frequency tuning word<31:24> n/a <23:16> frequency tuning word<23:16> n/a <15:8> frequency tuning word<15:8> n/a profile 6 register single tone (0x14) <7:0> frequency tuning word<7:0> n/a
AD9957 rev. 0 | page 48 of 60 register name (serial address) bit range (internal address) bit 7 (msb) bit 6 bit 5 bit 4 bit 3 bit 2 bit 1 bit 0 (lsb) default value <63:56> cci interpolation rate<7:2> spectral invert inverse cci bypass n/a <55:48> output scale factor n/a <47:40> phase offset word<15:8> n/a <39:32> phase offset word<7:0> n/a <31:24> frequency tuning word<31:24> n/a <23:16> frequency tuning word<23:16> n/a <15:8> frequency tuning word<15:8> n/a profile 6 register qduc (0x14) <7:0> frequency tuning word<7:0> n/a table 17. profile 7, ram, gpio configuration, and gpio data registers register name (serial address) bit range (internal address) bit 7 (msb) bit 6 bit 5 bit 4 bit 3 bit 2 bit 1 bit 0 (lsb) default value <63:56> open amplitude scale factor<13:8> n/a <55:48> amplitude scale factor<7:0> n/a <47:40> phase offset word<15:8> n/a <39:32> phase offset word<7:0> n/a <31:24> frequency tuning word<31:24> n/a <23:16> frequency tuning word<23:16> n/a <15:8> frequency tuning word<15:8> n/a profile 7 register single tone (0x15) <7:0> frequency tuning word<7:0> n/a <63:56> cci interpolation rate<7:2> spectral invert inverse cci bypass n/a <55:48> output scale factor n/a <47:40> phase offset word<15:8> n/a <39:32> phase offset word<7:0> n/a <31:24> frequency tuning word<31:24> n/a <23:16> frequency tuning word<23:16> n/a <15:8> frequency tuning word<15:8> n/a profile 7 register qduc (0x15) <7:0> frequency tuning word<7:0> n/a ram (0x16) <31:0> ram<31:0> n/a gpio config register (0x18) <15:0> gpio configuration<15:0> n/a gpio data register (0x19) <15:0> gpio data<15:0> n/a
AD9957 rev. 0 | page 49 of 60 register bit descriptions the serial i/o port registers span an address range of 0 to 25 (0x00 to 0x19 in hexadecimal notation). this represents a total of 26 registers. however, six of these registers are unused yielding a total of 20 available registers. the unused registers are 7, 8, 11 to 13, and 23 (0x07 to 0x08, 0x0b to 0x0d, and 0x17). the number of bytes assigned to the registers varies from register to register. that is, the registers are not of uniform depth; each contains the number of bytes necessary for its particular function. additionally, the registers are assigned names according to their functionality. in some cases, a register is given a mnemonic descriptor. for example, the register at serial address 0x00 is named control function register 1 and is assigned the mnemonic cfr1. the following section provides a detailed description of each bit in the AD9957 register map. for cases in which a group of bits serve a specific function, the entire group is considered as a binary word and described in aggregate. this section is organized in sequential order of the serial addresses of the registers. following each subheading are the individual bit descriptions for that particular register. the location of the bit(s) in the register are indicated by or , where a and b are bit numbers. the notation, , specifies a range of bits from most significant to least significant bit position. for example, <5:2> means bit positions 5 down to 2, inclusive, with bit 0 identifying the lsb of the register. unless otherwise stated, programmed bits are not transferred to their internal destinations until the assertion of an i/o update or profile change.
AD9957 rev. 0 | page 50 of 60 control function register 1 (cfr1) address 0x00, four bytes are assigned to this register. table 18. bit descriptions for cfr1 register bit no. mnemonic description 0: disables ram playback functionality (default). 31 ram enable 1: enables ram playback functionality. 30:20 not available ineffective unless bit 31 = 1. 0: ram playback data routed to baseband scaling multipliers (default). 28 ram playback destination 1: ram playback data routed to baseband i/q data path. 27:26 not available 00: quadrature modulation mode (default). 01: single tone mode. 25:24 operating mode 1x: interpolating dac mode. ineffective unless bits<9:8> = 10b. 0: osk pin inoperative (default). 23 manual osk external control 1: osk pin enabled for manual osk control (see the output shift keying (osk) section). 0: inverse sinc filter bypassed (default). 22 inverse sinc filter enable 1: inverse sinc filter active. this bit is automatically cleared by the serial i/o port controller . this operation requires several internal clock cycles to complete, during which time the data suppli ed to the cci input by the baseband signal chain is ignored. the inputs are forced to all zeros to flush the cci data path, after which the cci accumulators are reset. 0: normal operation of the cci filter (default). 21 clear cci 1: initiates an asynchronous reset of the accumulators in the cci filter. 20:17 not available ineffective unless bits<25:24> = 01b. 0: cosine output of the dds is selected (default). 16 select dds sine output 1: sine output of the dds is selected. 15:14 not available 0: normal operation of the dds phase accumulator (default). 13 autoclear phase accumulator 1: synchronously resets the dds phase accumulator any time i/o_update is asserted or a profile change occurs. 12 not available 0: normal operation of the dds phase accumulator (default). 11 clear phase accumulator 1: asynchronous, static reset of the dds phase accumulator. 0: normal operation of the osk am plitude ramp rate timer (default). 10 load arr @ i/o update 1: osk amplitude ramp rate timer reloaded any time i/o_update is asserted or a profile change occurs. 0: osk disabled (default). 9 osk (output shift keying) enable 1: osk enabled. ineffective unless bit 9 = 1. 0: manual osk enabled (default). 8 select auto-osk 1: automatic osk enabled. this bit is effective without the need for an i/o update. 0: clock signals to the digital core are active (default). 7 digital power- down 1: clock signals to the digital core are disabled. 0: dac clock signals and bias circuits are active (default). 6 dac power-down 1: dac clock signals and bias circuits are disabled. this bit is effective without the need for an i/o update. 0: refclk input circuits and pll are active (default). 5 refclk input power-down 1: refclk input circuits and pll are disabled. 0: auxiliary dac clock signals and bias circuits are active (default). 4 auxiliary dac power-down 1: auxiliary dac clock signals and bias circuits are disabled.
AD9957 rev. 0 | page 51 of 60 bit no. mnemonic description 0: assertion of the ext_pwr_dwn pin affects full power-down (default). 3 external power- down control 1: assertion of the ext_pwr_dwn pin affects fast recovery power-down. ineffective when bits<25:24> = 01b. 0: disable power-down (default). 2 auto power-down enable 1: when the txenable pin is logic 0, the baseband signal processing chain is flushed of residual data and the clocks are automatically stopped. clocks re start when the txenable pin is a logic 1. 0: configures the sdio pin for bidirectional opera tion; 2-wire serial prog ramming mode (default). 1 sdio input only 1: configures the serial data i/o pin (sdio) as an input only pin; 3-wire serial programming mode. 0: configures the serial i/o port for msb first format (default). 0 lsb first 1: configures the serial i/o port for lsb first format. control function register 2 (cfr2) address 0x01, four bytes are assigned to this register. table 19. bit descriptions for cfr2 register bit no. mnemonic description valid only when crf1<25:24> = 00b. 0: pin d<17:0> configured as an 18-bit parallel port (default). 31 blackfin interface (bfi) mode 1: pin d<5:4> configured as a dual serial port compat ible with the blackfin serial interface. pin d<17:6> and pin d<3:0> become available as a 16-bit gpio port. valid only when bit 31 = 1. 0: the dual serial port (bfi) configur ed for msb first operation (default). 30 blackfin bit order 1: the dual serial port (bfi) configured for lsb first operation. valid only when bit 31 = 1. 0: the dual serial port (bfi) configured to be compatible with blackfin late frame sync operation (default). 29 blackfin early frame sync enable 1: the dual serial port (bfi) configured to be co mpatible with blackfin early frame sync operation. 28:24 not available this bit is effective without the need for an i/o update. 0: serial i/o programming is synchronized with exte rnal assertion of the i/o_update pin, which is configured as in input pin (default). 23 internal io update active 1: serial i/o programming is synchronized with an inte rnally generated i/o update signal (the internally generated signal appears at the i/o_update pi n, which is configured as an output pin). 0: the sync_clk pin is disabled; static logic 0 output. 22 sync_clk enable 1: the sync_clk pin generates a clock signal at ? f sysclk ; used of synchronization of the serial i/o port (default). 21:17 not available 0: a serial i/o port read operation of the ftw register reports the contents of the ftw register (default). 16 read effective ftw 1: a serial i/o port read operation of the ftw register reports the actual 32-bit word appearing at the input to the dds phase accumulator. ineffective unless bit 23 = 1. sets the prescale ratio of the divider that clocks the auto i/o update timer as follows: 00: divide-by-1 (default). 01: divide-by-2. 10: divide-by-4. 15:14 io update rate control 11: divide-by-8. ineffective unless bit 31 = 0 and cfr1 bits<25:24> = 00b. 0: pdclk operates at the input data rate (default). 13 pdclk rate control 1: pdclk operates at ? the input data rate; useful fo r maintaining a consistent relationship between i/q words at the parallel data port and the internal clocks of the baseband signal processing chain. 0: the data-words applied to pin d<17:0> are expe cted to be coded as twos complement (default). 12 data format 1: the data-words applied to pin d<17:0> ar e expected to be coded as offset binary.
AD9957 rev. 0 | page 52 of 60 bit no. mnemonic description 0: the pdclk pin is disabled and forced to a static logi c 0 state; the internal clock signal continues to operate and provide timing to the data assembler. 11 pdclk enable 1: the internal pdclk signal appears at the pdclk pin (default). 0: normal pdclk polarity; q-data associated with logic 1, i-data with logic 0 (default). 10 pdclk invert 1: inverted pdclk polarity. 0: normal txenable polarity; logic 0 is standby, logic 1 is transmit (default). 9 txenable invert 1: inverted txenable polarity; logic 0 is transmit, logic 1 is standby. 0: an i/q data pair is delivered as i-data first followed by q-data (default). 8 q first data pairing 1: an i/q data pair is delivered as q-data first followed by i-data. 0: simultaneous application of amplitude, phase and frequency changes to the dds arrive at the output in the order listed (default). 7 matched latency enable 1: simultaneous application of amplitude, phase an d frequency changes to the dds arrive at the output simultaneously. ineffective when cfr1 bits<25:24> = 01b. 0: when the txenable pin is false, the data assembler ignores the input data and internally forces zeros on the baseband signal path (default). 6 data assembler hold last value 1: when the txenable pin is false, the data assembler ignores the input data and internally forces the last value received on the baseband signal path. 0: enables the sync_smp_err pin to indicate (act ive high) detection of a synchronization pulse sampling error. 5 sync timing validation disable 1: the sync_smp_err pin is forced to a static logic 0 condition (default). 4:0 not available control function register 3 (cfr3) address 0x02, four bytes are assigned to this register. table 20. bit descriptions for cfr3 register bit no. mnemonic description 31:30 drv0 controls refclk_out pin (see table 7 for details); default is 00b. 29:27 not available 26:24 vco sel selects frequency band of the vco in the refclk pll (see table 9 for details); default is 111b. 23:22 not available 21:19 i cp selects the charge pump current in the refclk pll (see table 9 for details); default is 111b. 18:16 not available 0: input divider is selected (default). 15 refclk input divider bypass 1: input divider is bypassed. 0: input divider is reset. 14 refclk input divider resetb 1: input divider operate s normally (default). 13:9 not available 0: refclk pll bypassed (default). 8 pll enable 1: refclk pll enabled. 7:1 n this 7-bit number is divide modulus of the refclk pll feedback di vider; default is 0000000b. 0 not available auxiliary dac control register address 0x03, four bytes are assigned to this register. table 21. bit descriptions for auxiliary dac control register bit(s) mnemonic description 31:8 not available 7:0 fsc this 8-bit number controls the full-scal e output current of the main dac (see the auxiliary dac section); default is 0xff.
AD9957 rev. 0 | page 53 of 60 i/o update rate register address 0x04, four bytes are assigned to this register. this register is effective without the need for an i/o update. table 22. bit descriptions for i/o update rate register bit(s) mnemonic description 31:0 i/o update rate ineffective unless cfr2 bit 23 = 1. this 32-bit number controls the automatic i/o update rate (see the automatic i/o update section); default is 0xffffffff. ram segment register 0 address 0x05, six bytes are assigned to this register. this register is effective without the need for an i/o update. this regi ster is only active if cfr1 bit 31 = 1 and there is a logic 0 to logic 1 transition on the rt pin. table 23. bit descriptions for ram segment register 0 bit(s) mnemonic description 47:32 ram address step rate 0 this 16-bit number controls the rate at which the ram state machine steps through the specified ram address range. 31:22 ram end address 0 this 10-bit number identifies the ending address for the ram state machine. 21:16 not available 15:6 ram start address 0 this 10-bit number identifies the starting address for the ram state machine. 5:3 not available 2:0 ram playback mode 0 this 2-bit number identifi es the playback mode for the ram state machine (see table 6 ). ram segment register 1 address 0x06, six bytes are assigned to this register. this register is only active if cfr1 bit 31 = 1 and there is a logic 1 t o logic 0 transition on the rt pin. table 24. bit descriptions for ram segment register 1 bit(s) mnemonic description 47:32 ram address step rate 1 this 16-bit number controls the rate at which the ram state machine steps through the specified ram address range. 31:22 ram end address 1 this 10-bit number identifies the ending address for the ram state machine. 21:16 not available 15:6 ram start address 1 this 10-bit number identifies the starting address for the ram state machine. 5:3 not available 2:0 ram playback mode 1 this 2-bit number identifi es the playback mode for the ram state machine (see table 6 ). amplitude scale factor register (asf) address 0x09, four bytes are assigned to this register. this register is only active if cfr1 bit 9 = 1. table 25. bit descriptions for asf register bits mnemonic description 31:16 amplitude ramp rate ineffective unless cfr1 bit 8 = 1. this 16-bit number controls the rate at which the osk controller updates amplitude changes to the dds. if cfr1 bit 8 = 0 and cfr1 bit 23 = 0, then this 14- bit number is the amplitude scale factor for the dds. if cfr1 bit 8 = 0 and cfr1 bit 23 = 1, then this 14- bit number is the amplitude scale factor for the dds when the osk pin is logic 1. 15:2 amplitude scale factor if cfr1 bit 8 = 1, then this 14-bit number sets a ceiling on the maximum allowable amplitude scale factor for the dds. 1:0 amplitude step size ineffective unless cfr1 bit 8 = 1. this 2-bit number controls the step size for amplitude changes to the dds (see table 10 ).
AD9957 rev. 0 | page 54 of 60 multichip sync register address 0x0a, four bytes are assigned to this register. table 26. bit descriptions for the multichip sync register bit(s) mnemonic description 31:28 sync validation delay default is 0000b. this 4-bit number sets the timing sk ew (in ~150 ps increments) between sysclk and the delayed sync-in signal for the synchronization validation block in the synchronization receiver. 0: synchronization clock receiver disabled (default). 27 sync receiver enable 1: synchronization clock receiver enabled. 0: synchronization clock generator disabled (default). 26 sync generator enable 1: synchronization clock generator enabled. 0: synchronization clock generator coincident with the rising edge of th e system clock (default). 25 sync generator polarity 1: synchronization clock generator coincident with the falling edge of the system clock. 24 not available 23:18 sync state preset value default is 000000b. this 6-bit number is the state that the internal clock generator assumes when it receives a sync pulse. 17:16 not available 15:11 sync generator delay default is 00000b. this 5-bit number sets the output delay (in ~150 ps increments) of the synchronization generator. 10:8 not available 7:3 sync receiver delay default is 00000b. this 5-bit number sets the delay inp ut delay (in ~150 ps increments) of the synchronization receiver. 2:0 not available
AD9957 rev. 0 | page 55 of 60 profile registers there are eight consecutive serial i/o addresses (0x0e to 0x15) dedicated to device profiles. all eight profile registers are either single tone profiles or qduc profiles depending on the device operating mode specified by cfr1 bits<25:24>. during operation, the active profile register is determined via the external profile<2:0> pins. single tone profiles control: dds frequency (32 bits), dds phase offset (16 bits), and dds amplitude scaling (14 bits). qduc profiles control: dds frequency (32 bits), dds phase offset (16 bits), output amplitude scaling (8 bits), cci filter interpolation factor, inverse cci bypass, and spectral invert. the qduc profiles also selectively apply to the interpolating dac operating mode: only output scaling, cci filter interpolation factor, and inverse cci bypass apply; all others (dds frequency, output amplitude scaling, and spectral invert) are ignored. profile<0:7> registersingle tone address 0x0e to 0x15, eight bytes are assigned to this register. table 27. bit descriptions for pr ofile<0:7> registerssingle tone bits mnemonic description 63:62 not available 61:48 amplitude scale factor this 14-bit nu mber controls the dds output amplitude. 47:32 phase offset word this 16-bit number controls the dds phase offset. 31:0 frequency tuning word this 32-bit number controls the dds frequency. profile<0:7> registerqduc address 0x0e to 0x15, eight bytes are assigned to this register. table 28. bit descriptions for profile<0:7> registersqduc bits mnemonic description 63:58 cc interpolation rate this 6-bit number is the rate interpolation factor for the cci filter. 0: the modulator output takes the form: i(t) cos( ct) C q(t) sin( ct). 57 spectral invert 1: the modulator output takes the form: i(t) cos( ct) + q(t) sin( ct). 0: the inverse cci filter is enabled. 56 inverse cci bypass 1: the inverse cci filter is bypassed. 55:48 output scale factor this 8-bit nu mber controls the output amplitude. 47:32 phase offset word this 16-bit number controls the dds phase offset. 31:0 frequency tuning word this 32-bit number controls the dds frequency. ram register address 0x16, four bytes are assigned to this register. table 29. bit descriptions for ram register bits mnemonic description 31:0 ram word the number of 32-bit words written to ram is defined by the start and end address in ram segment register 0 or ram segment register 1. gpio config register address 0x18, one byte is assigned to this register. table 30. bit descriptions for gpio config register bits mnemonic description 15:0 configuration bits see the general-purpose i/o (gpio) port section for details; default is 0x0000.
AD9957 rev. 0 | page 56 of 60 gpio data register address 0x198, one byte is assigned to this register. table 31. bit descriptions for gpio data register bits mnemonic description 15:0 data bits read or write based on the contents of the gpio config register. see the general-purpose i/o (gpio) port section for details.
AD9957 rev. 0 | page 57 of 60 outline dimensions compliant to jedec standards ms-026-aed-hd [note: exposed pad should be solder to ground] 1 25 26 50 76 100 75 51 14.00 bsc sq 16.00 bsc sq 0.75 0.60 0.45 1.20 max 1.05 1.00 0.95 0.20 0.09 0.08 max coplanarity view a rotated 90 ccw seating plane 0 min 7 3.5 0 0.15 0.05 view a pin 1 top view (pins down) 0.27 0.22 0.17 0.50 bsc lead pitch 1 25 26 50 76 100 75 51 bottom view (pins up) 5.00 sq exposed pad 121806-a figure 63. 100-lead thin quad fl at package, exposed pad [tqfp_ep] (sv-100-4) dimensions shown in millimeters ordering guide model temperature range package description package option AD9957bsvz C40c to +85c 100-lead thin quad flat package exposed pad [tqfp_ep] sv-100-4 1 AD9957bsvz-reel C40c to +85c 100-lead thin quad flat package exposed pad [tqfp_ep] sv-100-4 1 AD9957/pcbz evaluation board 1 1 z = rohs compliant part.
AD9957 rev. 0 | page 58 of 60 notes
AD9957 rev. 0 | page 59 of 60 notes
AD9957 rev. 0 | page 60 of 60 notes ?2007 analog devices, inc. all rights reserved. trademarks and registered trademarks are the property of their respective owners. d06384-0-5/07(0)


▲Up To Search▲   

 
Price & Availability of AD9957

All Rights Reserved © IC-ON-LINE 2003 - 2022  

[Add Bookmark] [Contact Us] [Link exchange] [Privacy policy]
Mirror Sites :  [www.datasheet.hk]   [www.maxim4u.com]  [www.ic-on-line.cn] [www.ic-on-line.com] [www.ic-on-line.net] [www.alldatasheet.com.cn] [www.gdcy.com]  [www.gdcy.net]


 . . . . .
  We use cookies to deliver the best possible web experience and assist with our advertising efforts. By continuing to use this site, you consent to the use of cookies. For more information on cookies, please take a look at our Privacy Policy. X